我发现教程上LCD1602 和 LCD12864 关于显示字符个数计数的方法不一样
LCD1602 是将计数在状态机语句中直接累加实现
write_ram2:
begin
if(char_cnt <=5'd26)
begin
char_cnt <= char_cnt + 1'b1;
lcd_rs<=1'b1;
lcd_data <= data_disp;
state <= write_ram2;
end
else
begin
char_cnt <=5'd0;
state <= shift;
end
end
LCD12864 则将计数器cnt单独写在了一个always语句中
always @(posedge sys_clk)
begin
if(clk_div)
begin
if(cnt_rst)
cnt <= 10'd0;
else if(state == wr_data_2 || state == wr_data_4 || state == wr_data_6 || state == wr_data_8)
cnt <= cnt + 1'b1;
end
end
而且当我尝试将LCD12864 的字符计数cnt也写在状态机语句中时候,出现了错误,显示结果很不规律,感觉像是cnt计数失败
这是为什么呢?谢谢!
我要赚赏金打赏帖 |
|
|---|---|
| 【FreeRtos】FreeRtos + MPU模块的配置使用被打赏¥32元 | |
| 【分享开发笔记,赚取电动螺丝刀】墨水屏文本显示器被打赏¥25元 | |
| 【STEVAL-STWINKT1B】:结合STMcubeMX软件读取HTS221温湿度被打赏¥22元 | |
| M5PAPERESP32EINKDEVKIT评测|使用MicroPython开发M5Paper被打赏¥15元 | |
| OK1126B-S开发板下以导航按键控制云台/机械臂姿态调整被打赏¥29元 | |
| 【树莓派5】便携热成像仪被打赏¥36元 | |
| 【树莓派5】环境监测仪被打赏¥35元 | |
| OK1126B-S开发板下多时段语音提示型电子时钟被打赏¥27元 | |
| OK1126B-S开发板下函数构建及步进电机驱动控制被打赏¥25元 | |
| 【S32K3XX】LPI2C 参数配置说明被打赏¥20元 | |
我要赚赏金
