完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
#include "DSP2833x_Device.h" // DSP2823x Headerfile Include File #include "DSP2833x_examples.h" // DSP2823x Examples Include File #define uchar unsigned char #define LCD_RS GpioDataRegs.GPADAT.bit.GPIO0 //#define LCD_RW GpioDataRegs.GPADAT.bit.GPIO2 #define LCD_EN GpioDataRegs.GPADAT.bit.GPIO1 #define LCD_DB GpioDataRegs.GPADAT.all void Init_Port(void); void LCD_init(void); void LCD_write_command(uchar command); void LCD_write_data(uchar dat); void show(char *cont); void main(void) { int a; int m=1; InitSysCtrl(); Init_Port(); DINT; InitPieCtrl(); IER = 0x0000; IFR = 0x0000; InitPieVectTable(); EALLOW; GpioCtrlRegs.GPAMUX1.bit.GPIO12 = 0; // GPIO GpioCtrlRegs.GPADIR.bit.GPIO12 = 0; // input GpioCtrlRegs.GPAMUX1.bit.GPIO13 = 0; // GPIO GpioCtrlRegs.GPADIR.bit.GPIO13 = 0; // input GpioCtrlRegs.GPAMUX1.bit.GPIO14 = 0; // GPIO GpioCtrlRegs.GPADIR.bit.GPIO14 = 0; // input GpioCtrlRegs.GPAMUX1.bit.GPIO15 = 0; // GPIO GpioCtrlRegs.GPADIR.bit.GPIO15 = 0; // input EDIS; while (1) { if (GpioDataRegs.GPADAT.bit.GPIO12==0) m++; if (GpioDataRegs.GPADAT.bit.GPIO13==0 & GpioDataRegs.GPADAT.bit.GPIO12==1) m--; if (GpioDataRegs.GPADAT.bit.GPIO14==0) a=m; if (GpioDataRegs.GPADAT.bit.GPIO15==0) a=0; } for(;;) { LCD_init(); LCD_write_command(0x80); show(" a "); while(1); } } void show(char *cont) { while(*cont!=0) { LCD_write_data(*cont); DELAY_US(500); //延时500us cont++; } } void Init_Port(void) { EALLOW; GpioCtrlRegs.GPAPUD.bit.GPIO0 = 0; //GpioCtrlRegs.GPAPUD.bit.GPIO2 = 1; GpioCtrlRegs.GPAPUD.bit.GPIO1 = 1; GpioCtrlRegs.GPAMUX1.all = 0x000000; GpioCtrlRegs.GPADIR.all = 0x00FFF; GpioCtrlRegs.GPAQSEL1.all = 0x0000; GpioDataRegs.GPADAT.bit.GPIO0 = 1; //GpioDataRegs.GPADAT.bit.GPIO2 = 0; GpioDataRegs.GPADAT.bit.GPIO1 = 0; EDIS; } void LCD_write_command(uchar command) { LCD_EN=0; LCD_RS=0; //LCD_RW=0; LCD_DB=(command<<2)|0x0000; DELAY_US(500); LCD_EN=1; DELAY_US(1000); LCD_EN=0; } void LCD_write_data(uchar dat) { LCD_EN=0; LCD_RS=1; //LCD_RW=0; LCD_DB=(dat<<2)|0x0001; DELAY_US(500); LCD_EN=1; DELAY_US(1000); LCD_EN=0; } void LCD_init(void) { DELAY_US(15000);//延迟15ms LCD_write_command(0x38);//设置8位格式,2行,5x7 DELAY_US(5000);//延迟5ms LCD_write_command(0x38);//设置8位格式,2行,5x7 DELAY_US(5000); LCD_write_command(0x38);//设置8位格式,2行,5x7 LCD_write_command(0x38);//设置8位格式,2行,5x7 LCD_write_command(0x08);//关显示,不显示光标,光标不闪烁; LCD_write_command(0x01);//清除屏幕显示:数据指针清零,所有显示清零; LCD_write_command(0x06);//设定输入方式,增量不移位 LCD_write_command(0x0c);//整体显示,关光标,不闪烁 } |
|
相关推荐
6个回答
|
|
其实您可以换一下主控,dsp用来干这事没有必要的,建议用51
|
|
|
|
|
|
|
|
|
|
|
|
你的显示驱动文件是哪来的????我正在找这个,求帮助
|
|
|
|
网上有例程的,您可以找找,我想问一下您,您了解这个实验板上的按键是怎样控制的吗?谢谢 |
|
|
|
我没用过DSP的按键,不过STM32上的是用外部中断控制的,我想这个应该差不多 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于 DSP5509 进行数字图像处理中 Sobel 算子边缘检测的硬件连接电路图
2568 浏览 0 评论
708 浏览 0 评论
普中科技F28335开发板中,如何使用aic23播放由代码生成的正弦波
3005 浏览 0 评论
3771 浏览 1 评论
1228 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-30 19:07 , Processed in 0.745106 second(s), Total 88, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号