欢迎来到天天文库
浏览记录
ID:41205748
大小:15.87 KB
页数:6页
时间:2019-08-18
《基于MSP430F149的多通道ADC采样与12864显示》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、//********************************************************************//ADC12序列通道与D12864液晶模块显示程序//********************************************************************#include#defineCPU_F((double)8000000) #definedelay_us(x)__delay_cycles((long)(CPU_F*(double)x/1000000.0)) #definedelay_m
2、s(x)__delay_cycles((long)(CPU_F*(double)x/1000.0)) #defineucharunsignedchar#defineuint unsignedint#defineulongunsignedlong/*12864应用指令*/#defineCLEAR_SCREEN0x01 //清屏指令:清屏且AC值为00H#defineAC_INIT 0x02 //将AC设置为00H。且游标移到原点位置#defineCURSE_ADD0x06 //设定游标移到方向及图像整体右移,#defineFUN_MODE0x30 //工作模式:8位基
3、本指令集#defineDISPLAY_ON0x0c //显示开,显示游标,且游标位置反白#defineDISPLAY_OFF0x08 //显示关#defineCURSE_DIR0x14 //游标向右移动:AC=AC+1#defineSET_CG_AC0x40 //设置AC,范围为:00H~3FH#defineSET_DD_AC0x80#defineP500#defineP511#defineP555#defineP566#defineP577#defineRS_CLRP5OUT&=~(1<4、=(1<<5、P55) //RS置高#defineRW_CLRP5OUT&=~(1<6、=(1<7、=(1<8、=(1<9、) //RST置低#defineRST_SETP5OUT10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
4、=(1<<
5、P55) //RS置高#defineRW_CLRP5OUT&=~(1<6、=(1<7、=(1<8、=(1<9、) //RST置低#defineRST_SETP5OUT10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
6、=(1<7、=(1<8、=(1<9、) //RST置低#defineRST_SETP5OUT10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
7、=(1<8、=(1<9、) //RST置低#defineRST_SETP5OUT10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
8、=(1<9、) //RST置低#defineRST_SETP5OUT10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
9、) //RST置低#defineRST_SETP5OUT
10、=(1<11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL212、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP(); 13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
11、 系统时钟初始化//*************************************************************************voidClock_Init(){ uchari; BCSCTL1&=~XT2OFF; //打开XT振荡器 BCSCTL2
12、=SELM1+SELS; //MCLK为8MHZ,SMCLK为8MHZ do{ IFG1&=~OFIFG; //清除震荡标志 for(i=0;i<100;i++) _NOP();
13、 //延时等待 } while((IFG1&OFIFG)!=0); //如果标志为1,则继续循环等待 IFG1&=~OFIFG; }//*************************************************************************// MSP430内部看门狗初始化//*********************
此文档下载收益归作者所有