资源简介
基于protues实现128-32点阵屏的设计,集成了flash芯片,
将GBK字库集成到flash芯片,从而实现字库集成,只需用串口控制无需
用取模软件实现。
代码片段和文件信息
#include “config.h“
#include
#include
#include “hardware.h“
/*void GetHzCode(uchar *hzuchar *buff)
{
uint32 area = hz[0] - 0xA1;
uint32 where = hz[1] - 0xA1;
read_from_at25f4096((area * 94 + where)*32buff32);
}*/
/*void re_location(uchar (*pcode)[32])
{
uchar jm;
for ( j = 0 ;j < 4;j++ ) //重新计算移动的坐标移动一次
{
for( m = 0 ; m <16; m++ )
{
pcode[j][2*m] = pcode[j][2*m]<<1 | pcode[j][2*m+1]>>7;
pcode[j][2*m + 1] = pcode[j][2*m + 1]<<1 | pcode[(j+1)%4][2*m]>>7;
}
}
}*/
void re_location(uchar (*pcode)[32]uchar * buffuchar cnt)
{
uchar jm;
for ( j = 0 ;j < 3;j++ ) //重新计算移动的坐标移动一次
{ //前面3个字涉及到的是缓存,最后一个字跟buff有关
for( m = 0 ; m <16; m++ )
{
pcode[j][2*m] = pcode[j][2*m]<<1 | pcode[j][2*m+1]>>7;
pcode[j][2*m + 1] = pcode[j][2*m + 1]<<1 |pcode[j+1][2*m]>>7;
}
}
for( m = 0 ; m <16; m++ )
{
pcode[3][2*m] = pcode[3][2*m]<<1 | pcode[3][2*m+1]>>7;
pcode[3][2*m + 1] = pcode[3][2*m + 1]<<1 |buff[2*m + cnt/8]>>(7-cnt%8);
}
}
void adre_pos(uchar *struchar (*pcode)[32])
{
uint32 area;
uint32 where;
uchar i = 0;
uint j = 10;
uchar m = 0;
uchar *ptmp = str;
uchar buff[32];
while ( *ptmp != ‘\0‘ )
{
area = str[i*2 + 0] - 0xA1;
where = str[i*2 + 1] - 0xA1;
read_from_at25f4096((area * 94 + where)*32buff32);//加载数据
i++;
ptmp += 2;
for ( m = 0 ; m < 16 ; m++)//移动16次显示下一个字
{
re_location(pcodebuffm);
while (j--)display_str(pcode);//刷屏
j = 5;
}
}
//memset(pcode0sizeof(pcode));
}
//74hc595驱动 先传高位再传低位
void display_str(uchar (*pcode)[32])
{
uint i;
uchar tmp;
uchar j;
uchar m;
SCLT = 0;
SCLH = 0;
//为列锁存做准备
for ( m = 0 ; m < 16 ; m++ ) //显示4个汉字 16行
{
SCLT = 0;
//ROW_NUM = m;
for(i = 0 ;i < 2*4 ; i++) //4个汉字 一个汉字两个字节每行 一共8个字节
{
//tmp = *(pcode + 2*m + (i/2)*32 + i);
tmp = pcode[i/2][2*m + i%2];
for( j = 0; j < 8 ; j++ )
{ //循环两次,每次移一个字节,
SCLH = 0; //为列移位做准备
if (tmp & 0x80) DATA = 1;
else DATA = 0;
tmp <<= 1; //将数据缓冲右移一位,为下次输出做准备
SCLH = 1; //将DATA上的数据移入寄存器
} //移入单字节结束
}
ROW_NUM &=~ 0x0f;
ROW_NUM = m; //在仿真中先送行,再送列
SCLT = 1;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 26270 2014-03-05 16:56 8th_串口控制点阵\1
文件 4004 2014-03-05 16:56 8th_串口控制点阵\1.hex
文件 100 2014-03-05 16:56 8th_串口控制点阵\1.lnp
文件 25603 2014-03-05 16:56 8th_串口控制点阵\1.M51
文件 60441 2014-03-05 17:18 8th_串口控制点阵\1.plg
....... 60619 2015-03-25 09:03 8th_串口控制点阵\1.uvopt
....... 14489 2014-03-12 15:38 8th_串口控制点阵\1.uvproj
文件 35542 2014-03-12 17:12 8th_串口控制点阵\11
文件 8060 2014-03-12 17:12 8th_串口控制点阵\11.hex
文件 101 2014-03-12 17:12 8th_串口控制点阵\11.lnp
文件 29573 2014-03-12 17:12 8th_串口控制点阵\11.M51
文件 165 2015-03-25 09:03 8th_串口控制点阵\11.plg
....... 59807 2014-08-29 08:05 8th_串口控制点阵\1_uvopt.bak
....... 14488 2014-03-12 15:31 8th_串口控制点阵\1_uvproj.bak
文件 26788 2014-03-05 21:11 8th_串口控制点阵\7
文件 3837 2014-03-05 21:11 8th_串口控制点阵\7.hex
文件 100 2014-03-05 21:11 8th_串口控制点阵\7.lnp
文件 25420 2014-03-05 21:11 8th_串口控制点阵\7.M51
文件 2715 2014-03-05 21:12 8th_串口控制点阵\7.plg
文件 2690 2014-03-12 15:51 8th_串口控制点阵\74hc595.c
文件 6820 2014-03-12 17:12 8th_串口控制点阵\74hc595.LST
文件 10748 2014-03-12 17:12 8th_串口控制点阵\74hc595.OBJ
文件 27868 2014-03-09 12:07 8th_串口控制点阵\8
文件 4858 2014-03-09 12:07 8th_串口控制点阵\8.hex
文件 100 2014-03-09 12:07 8th_串口控制点阵\8.lnp
文件 26392 2014-03-09 12:07 8th_串口控制点阵\8.M51
文件 74896 2014-03-09 16:03 8th_串口控制点阵\8.plg
文件 34567 2014-03-12 15:37 8th_串口控制点阵\9
文件 8105 2014-03-12 15:37 8th_串口控制点阵\9.hex
文件 100 2014-03-12 15:37 8th_串口控制点阵\9.lnp
............此处省略21个文件信息
相关资源
- QT开发的串口通讯软件(基于qextseri
- 240128lcd驱动程序
- 利用msp430g2553进行串口通信
- MSP430G2553串口程序
- 51单片机心形闪烁配套资料
- 单片机AD 转换 和 串口通信汇编语言
- 51单片机的串口采集温度程序
- 串口以太网二合一调试助手
- 51单片机控制16位流水灯有源代码与
- BLE蓝牙串口助手
- 用QT做的LINUX下串口通信测试可用
- 51单片机篮球记分器的设计
- 三线制实时时钟的读写
- 基于51单片机的温度控制系统最终版
- 基于51 单片机直流电机pwm控制
- arduino使用串口语音模块,解决汉子编
- ISD1700语音芯片 51单片机程序
- 串口调试软件带校验的
- 矩阵键盘简易计算器Keil+proteus仿真.
- 通讯服务器,带Socket功能,操作串口
- 基于51单片机的电机调速代码
- 51单片机12864显示波形程序
- 传送带产品计数器的设计LCD显示51单片
- STC15/STC15F2K60S2/STC15W4K32S4系列读取超声
- STC15F2K60S2串口通信程序
- STC15F2K60S2读取DHT11温湿度传感器数据串
- stm32基于轮询方式的串口收发程序
- STM32F030C8T6串口例程
- 基于单片机的串口多机通信6机
- 基于单片机的心型灯设计.rar
评论
共有 条评论