点阵汉字的字模读取与显示

一、串口传输文件

1.串口连接

(1)首先下载串口调试助手:

链接:https://pan.baidu.com/s/1T-7cHCwenyQCfyJSyRusKg 
提取码:jack

(2)使用两台电脑连接:使用借助 usb转rs232 模块和杜邦线,建立起串口连接,连线为GND接GND,电源接电源,TDX和RDX反接

(3)传输:

 打开图中的第一个软件

在发送电脑里:选择你需要打开的文件,选择完毕之后,点击打开串口,以及调整波特率,然后直接点击发送文件即可

 在接受电脑:从接收完毕之后点击图中的保存数据,即可看到数据保存成功

 

我这里保存的文件打开之后是这样的

 

 3.预算文件大小、波特率和传输时间三者之间的关系,对比实际传输时间。

115200波特率下:

600000波特率下面

 可以看见在不同

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
字模是将汉字、英文字母等字符转换为点阵数据的过程,其实现方式因不同的字库和控制器而异。以下是一个简单的示例,假设使用的是16*16的字库,字库数据存储在ROM中,并通过8位并口接口的LCD进行显示,对应的RS、RW、E、D0-D7引脚分别为P0.0-P0.7: ```c // 定义一个16*16的数组,存储取出的汉字点阵数据 unsigned char matrix[16][16]; // 从ROM中取出汉字点阵数据,存储到matrix数组中(假设ROM地址为0x1000) unsigned char* font_rom = (unsigned char*)0x1000; // 假设字库数据存储在0x1000地址处 unsigned char* matrix_ptr = &matrix[0][0]; unsigned char character = '中'; // 要取模的字符 unsigned int offset = (character - 0x80) * 32; // 计算字库数据在ROM中的偏移量 for(int i = 0; i < 16; i++) { for(int j = 0; j < 2; j++) { unsigned char byte = font_rom[offset++]; // 从ROM中读取一个字节的数据 for(int k = 0; k < 8; k++) { *matrix_ptr++ = (byte & (1 << k)) ? 1 : 0; // 将字节中的每一位转换为0或1,并存储到matrix数组中 } } } // 将matrix数组中的点阵数据显示到LCD上 for(int wordl = 0; wordl < 16; wordl++) { for(int wordc = 0; wordc < 8; wordc++){ unsigned char data = 0; for(int k = 0; k < 8; k++) { data |= (matrix[wordl][wordc * 8 + k] << k); // 将matrix数组中的8个点阵数据合并成一个字节 } LCD_RS = 1; // RS为高,表示传输的是数据而非指令 LCD_RW = 0; // RW为低,表示写入数据 LCD_E = 1; // 使能LCD控制器 P0 = data; // 将数据写入Data口 LCD_E = 0; // 结束数据传输 } } ``` 以上代码仅供参考,实际使用时需要根据具体的字库和LCD控制器进行相应的修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值