SH79F161B Demo Code 单片机例程,对初学者非常有用
单片机源程序如下:
- #include "SH79F161B.h"
- #include "intrins.h"
- #include "cpu.h"
- #include "system.h"
- #include "adc_define.h"
- void init_adc()
- {
- #ifdef VREF_FROM_VDD
- /***************************************************************************************
- 1.选择tAD=12*tSYS=1us@12MHz
- 2.选择采样时间为2*tAD
- ****************************************************************************************/
- ADT=0x80;
- /****************************************************************************************
- 1.选择VDD作为内部参考电压
- 2.选择模拟输入通道ADC0
- *****************************************************************************************/
- RXDCON = 0x00;
- ADCON = 0x00;
- /*****************************************************************************************
- 设置P0.2为ADC口
- ******************************************************************************************/
- ADCH = 0x01;
- /*****************************************************************************************
- 使能ADC转换完成中断,清ACLIF、ACGIF
- *******************************************************************************************/
- IEN0 |= 0xC0;
- ADCON &= 0xBF;
- /******************************************************************************************
- 使能ADC模块
- *******************************************************************************************/
- ADCON |= 0x80;
- /*******************************************************************************************
- 启动AD转换
- ********************************************************************************************/
- ADCON |= 0x01;
- #endif
- #ifdef VREF_FROM_EXPOWER
- /***************************************************************************************
- 1.选择tAD=12*tSYS=1us@12MHz
- 2.选择采样时间为2*tAD
- ****************************************************************************************/
- ADT=0x80;
- /****************************************************************************************
- 1.选择P1.6输入电压作为内部参考电压
- 2.选择模拟输入通道ADC0
- *****************************************************************************************/
- RXDCON = 0x80;
- ADCON = 0x00;
- /*****************************************************************************************
- 设置P0.2为ADC口
- ******************************************************************************************/
- ADCH = 0x01;
- /*****************************************************************************************
- 使能ADC转换完成中断,清ACLIF、ACGIF
- *******************************************************************************************/
- IEN0 |= 0xC0;
- ADCON &= 0xBF;
- /******************************************************************************************
- 使能ADC模块
- *******************************************************************************************/
- ADCON |= 0x80;
- /*******************************************************************************************
- 启动AD转换
- ********************************************************************************************/
- ADCON |= 0x01;
- #endif
- #ifdef DIGITAL_COMPARE_FUNCTION
- /***************************************************************************************
- 1.选择tAD=12*tSYS=1us@12MHz
- 2.选择采样时间为2*tAD
- ****************************************************************************************/
- ADT=0x80;
- /****************************************************************************************
- 1.选择VDD作为内部参考电压
- 2.选择模拟输入通道ADC0
- *****************************************************************************************/
- RXDCON = 0x00;
- ADCON = 0x00;
- /*****************************************************************************************
- 设置P0.2为ADC口
- ******************************************************************************************/
- ADCH = 0x01;
- /*****************************************************************************************
- 使能ADC转换完成中断,清ACLIF、ACGIF
- *******************************************************************************************/
- IEN0 |= 0xC0;
- ADCON &= 0xBF;
- /*******************************************************************************************
- 设置比较值
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
SH79F161B Demo Code V1.0.zip
(562.28 KB, 下载次数: 31)
|