stm32 点阵移动程序.doc

stm32 点阵移动程序.doc

ID:49770433

大小:91.50 KB

页数:14页

时间:2020-03-04

stm32 点阵移动程序.doc_第1页
stm32 点阵移动程序.doc_第2页
stm32 点阵移动程序.doc_第3页
stm32 点阵移动程序.doc_第4页
stm32 点阵移动程序.doc_第5页
资源描述:

《stm32 点阵移动程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、此程序是用的flash里面装的字库的方法来做的,可以显示各种字和字符,可以各种移动,左移,右移,上下移动都可以。以下是该程序的主要代码(所谓的主要代码就是跟移动有关的代码)/****************************************************************************************************程序名称:LedDisplay(void)**输入参数:无**输出参数:无**返回值:无**描述:LED显示板一行显示程序。此程序读取显示缓存中的数据,并在LED上显示出来。**注:此程序显示的字模为纵向取模。****

2、**********************************************************************************************/voidLedDisplay(void){uint16_toffset_addr;uint16_tlenght;uint8_t*data;//#ifdefOS_TICKS_PER_SEC//如果时钟节拍数定义了,说明要使用ucosII了.//OS_CPU_SRcpu_sr=0u;//OS_ENTER_CRITICAL();//#endifoffset_addr=(ScanRow/8)*LED_SET

3、.Width;LedScanTime=0;/*关显示(消隐)*/if(!LED_SET.ENMode){LedEn_H();//关显示}else{LedEn_L();}lenght=LED_SET.Width;/*输出列数据*/if(!BackFlag){data=Buf0+offset_addr;while(lenght--){LedOutBit(*data,ScanRow);data++;}}else{data=Buf1+offset_addr;while(lenght--){LedOutBit(*data,ScanRow);data++;}}LedClk_L();LedLat_L

4、();//锁存数据LedDelay(10);LedLat_H();LedDelay(10);LedLat_L();offset_addr=LedScanTime;/*关显示(消隐)*/if(!LED_SET.ENMode){LedEn_H();//关显示}else{LedEn_L();}/*输出行扫描信号*/ScanRow&=0x0F;LedRow(ScanRow);ScanRow++;//行+1if(ScanRow==LED_SET.ScanMode)//16{ScanRow=0;}if(ScanRow==LED_SET.FirstRow)//如果完成一帧扫描,置标志,扫描完16行{

5、ScanFlag=1;//只有当ScanFlag=1时,才能切换显示内容}else{ScanFlag=0;}//#ifdefOS_TICKS_PER_SEC//如果时钟节拍数定义了,说明要使用ucosII了.//OS_EXIT_CRITICAL();//#endifLedDelay(LED_SET.BlankTime);//消隐时间if(LED_SET.OnOff==ON)//如果显示屏配置为显示,则开显示{if(!LED_SET.ENMode){LedEn_L();//开显示}else{LedEn_H();}}}voidGet_HzMat(unsignedchar*code,unsi

6、gnedchar*mat,uint8_tsize){unsignedcharqh,ql;unsignedchari;unsignedlongfoffset;#ifOS_CRITICAL_METHOD==3//中断函数被设定为模式3OS_CPU_SRcpu_sr=0u;#endifqh=*code;ql=*(++code);if(qh<0x81

7、

8、ql<0x40

9、

10、ql==0xff

11、

12、qh==0xff)//非常用汉字,没有包含在字库内{for(i=0;i<(size*2);i++){*mat++=0x00;//填充满格}return;//结束访问}if(ql<0x7f){ql-=0x40

13、;//注意!}else{ql-=0x41;}qh-=0x81;foffset=((unsignedlong)190*qh+ql)*(size*2);//得到字库中的字节偏移量#ifdefOS_TICKS_PER_SEC//如果时钟节拍数定义了,说明要使用ucosII了.OS_ENTER_CRITICAL();#endifFlashBusy^=1;SPI_FLASH_BufferRead(mat,GBK16_ADDR+foffset,32);//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。