Ane_蝎
Ane_蝎
关注数: 4
粉丝数: 7
发帖数: 691
关注贴吧数: 7
电脑死机屏幕部分发黄闪烁 如图,电脑正常运行中突然死机,电脑显示异常,部分位置发黄,已连续出现四天。重启后恢复正常。
cc2530 ad转换问题 尝试用CC2530裸机做外部电压采集的AD转换再通过串口传输,使用P0_7引脚采集干电池电压(2.61V),但采集后一直输出0.0V电压,换了其他引脚还是无法实现正确的电压采集,请教各位是哪里出了问题,谢谢! 代码如下: #include "ioCC2530.h" #include "stdio.h" #define LED1 P1_0 #define ConversionNum 20 #define uint unsigned int #define uchar unsigned char char temp[2]; uint adc; float num; void Delay(uint); void InitialAD(void); char adcdata[]=" 0.00V "; //函数声明 void Delay(uint); void initUARTtest(void); void UartTX_Send_String(char *Data,int len); void InitialAD(void); /**************************************************************** *函数功能 :延时 *入口参数 :定性延时 *返 回 值 :无 *说 明 : ****************************************************************/ void Delay(uint n) { uint i; for(i=0;i<n;i++); for(i=0;i<n;i++); for(i=0;i<n;i++); for(i=0;i<n;i++); for(i=0;i<n;i++); } /**************************************************************** *函数功能 :初始化串口1 *入口参数 :无 *返 回 值 :无 *说 明 :57600-8-n-1 ****************************************************************/ void initUARTtest(void) { //晶振选择32MHz CLKCONCMD &= ~0x40; //等待晶振稳定 while(!(SLEEPSTA & 0x40)); //TICHSPD128分频,CLKSPD不分频 CLKCONCMD &= ~0x47; //关闭不用的RC振荡器 SLEEPCMD |= 0x04; //使用串口备用位置1 P0口 PERCFG = 0x00; //P0用作串口 P0SEL = 0x3c; //选择串口0优先作为串口 P2DIR &= ~0XC0; //UART方式 U0CSR |= 0x80; //波特率baud_e的选择 U0GCR |= 10; //波特率设为57600 U0BAUD |= 216; //串口0发送中断标志清零 UTX0IF = 0; } /**************************************************************** *函数功能 :串口发送字符串函数 *入口参数 : data:数据 *len :数据长度 *返 回 值 :无 *说 明 : ****************************************************************/ void UartTX_Send_String(char *Data,int len) { int j; for(j=0;j<len;j++) { U0DBUF = *Data++; while(UTX0IF == 0); UTX0IF = 0; } } /**************************************************************** *函数功能 :初始化ADC* *入口参数 :无 * *返 回 值 :无* *说 明 :参考电压AVDD,转换对象是p0——7* ****************************************************************/ void InitialAD(void) { //清EOC标志 ADCH &= 0X00; //P0.6端口模拟I/O使能 APCFG |= 0X80;//0x80 //单次转换,参考电压为电源电压,对P07进行采样 12位分辨率 ADCCON3=0xb7;//0xb7 //停止A/D ADCCON1 = 0X30; //启动A/D ADCCON1 |= 0X40; } void Get_ADC_Value() { temp[1] = ADCL; temp[0] = ADCH; //初始化AD InitialAD(); //开始下一转换 ADCCON1 |= 0x40; //adc赋值 adc |= (uint)temp[1]>>4; adc |= ( (uint) temp[0] )<<4; num = adc*3.3/2048;//8192;//8096;//7686 //定参考电压为3.3V。14位精确度 adcdata[1] = (char)(num)%10+48; adcdata[3] = (char)(num*10)%10+48; adcdata[4] = (char)(num*100)%10+48; UartTX_Send_String(adcdata,6); } /**************************************************************** *函数功能 :主函数 *入口参数 :无 *返 回 值 :无 *说 明 :无 ****************************************************************/ void main(void) { //P1控制LED P1DIR |= 0x01; //关LED LED1 = 1; //串口初始化 initUARTtest(); //初始化ADC InitialAD(); UartTX_Send_String(adcdata,8); while(1) { //串口发送数据 UartTX_Send_String(adcdata,8);//UartTX_Send_String(Txdata,sizeof("UART0 TX Test")); Delay(50000); //延时 Delay(50000); Delay(50000); LED1 = ~LED1; } }
好奇帖--想问理工的好看的蓝孩子-=- 特别好奇西安理工大学的好看的蓝孩子都什么时间出来溜达打篮球什么的,想看看养养眼~~~哈哈哈
学校周围哪里可以打印明信片呀 自己做了点明信片,但找了几家店都做不了,想问下有没有谁做过类似的东西,你们是在哪打印的啊
西安哪里有比较好点的图文打印店,推荐一下 自己做了点明信片,但学校周围好像都印不了,想问下大家有没有什么图文打印店能推荐一下,谢谢啦
1
下一页