历史上的今天
今天是:2024年09月07日(星期六)
2019年09月07日 | MSP430操作ADC0808程序
2019-09-07 来源:eefocus
虽然MSP430F149自带10位的ADC,出于各种原因,我还是选用了ADC0808作为AD转化,下面是程序:
#include #include"lcd.h" #define DATA_DIRIN P3DIR=0x00; #define DATA P3IN #define START_DIROUT P4DIR|=BIT0 //P4.0->START #define CLR_START P4OUT&=~BIT0 #define SET_START P4OUT|=BIT0 #define OE_DIROUT P4DIR|=BIT1 //P4.1->OE #define CLR_OE P4OUT&=~BIT1 #define SET_OE P4OUT|=BIT1 #define EOC_DIROUT P4DIR|=BIT2 //P4.2->EOC #define EOC_DIRIN P4DIR&=~BIT2 #define EOC_READ P4IN&BIT2 #define CLR_EOC P4OUT&=~BIT2 #define SET_EOC P4OUT|=BIT2 unsigned char voltageChar[6]="0.00V";//ÒªÏÔʾ×Ö·û´®£¬×îºóһλĬÈÏÊÇ¡® ¡¯ void DelayXms(unsigned int i); //delay about x ms int main( void ) { unsigned int v; // Stop watchdog timer to prevent time out reset WDTCTL = WDTPW + WDTHOLD; P5SEL |= BIT6; //P5.6Êä³öACLK = 32768Hz£¬×÷ΪADC0808µÄʱÖÓÐźŠLcdReset(); //lcd1602³õʼ»¯ DATA_DIRIN; START_DIROUT; OE_DIROUT; EOC_DIRIN; while(1){ CLR_START; CLR_OE; SET_START; DelayXms(1); CLR_START; while(!(P4IN&0x04)); SET_OE; v = DATA; CLR_OE; DelayXms(500); } return 0; } void DelayXms(unsigned int i){ unsigned int j; for( ; i>0; i--){ for(j=0;j<200;j++); } }
史海拾趣
|
1 问题的提出 在应用系统中,RS-485半双工异步通信总线是被各个研发机构广泛使用的数据通信总线,它往往应用在集中控制枢纽与分散控制单元之间。系统简图如图1所示。 图1. RS-485系统示意图 由于实际应用系统中,往往分散控 ...… 查看全部问答> |
|
先说一下硬件情况 CPU: s3c2440 BANK6: 64M SDRAM BANK7: 64M SDRAM 只使用64M内存能起来, 代码如下: ========================= config.bib ================================ NK ...… 查看全部问答> |
|
我们的平台usb设备电源是上电后就一直供应的,这样造成了一些上电前插入的USB设备在系统启动后无法识别,必须重新插拔一次.有些设备又可以正常识别. DEBUG usb 驱动发现,usb驱动在初始化的时候会查询每个端口的状态,并且会尝试枚举设备,但是上电前插 ...… 查看全部问答> |
|
一般说来,不光是重要的信号线,只要信号在一段时间内可能出于无驱动状态,就需要处理。 比如说,一个CMOS门的输入端阻抗很高,没有处理,在悬空状况下很容易捡拾到干扰,如果能量足够甚至会导致击穿或者闩 锁,导致器件失效。祈祷输入的保护二 ...… 查看全部问答> |
|
资料来了,《自己动手写CPU》1-5章下载 感谢作者,有经济的话,还是建议买正版 《自己动手写cpu》使用verilog hdl 设计实现了一款兼容mips32指令集架构的处理器——openmips。openmips 处理器具有两个版本,分别是教 ...… 查看全部问答> |
|
用的是Cortex M0+中LPC812单片机 谢谢大神们指教。 源程序如下: #include \"LPC8xx.h\" #define LED1 (1 PIN0 |= LED2; &nbs ...… 查看全部问答> |




