【已解决】记录使用dsPIC33CK64MP508驱动128段断码屏

遇到的问题:

    使用dsPIC单片机驱动断码屏,初始化使其全亮进行测试发现1621芯片COM3对应的所有段都不亮,排除硬件问题(有一块别人写好的代码驱动同一块断码屏可以全部显示)。

    同样的驱动代码,使用STM32单片机驱动时没有遇到这样的问题。(从STM32移植到dsPIC上的)

解决方法:

    和初始化顺序有关,上图是可以用的初始化。偏压设置初始化本来在打开LCD显示初始化上面,将其移到最上面解决问题。之前看网友类似问题的帖子说是延时时间问题,但并不能解决我的问题。看似一个简单的细节,却花费了我几个小时的光阴来解决。之所以能想到调整初始化顺序还是因为要配置蜂鸣器初始化,配置时发现如果先初始化声音打开再初始化频率设置为4K是不行的。于是猜测LCD初始化部分会不会能解决问题。 

   24/2/23今天早上测试发现依然存在一些问题,初始化顺序问题并不是真正的罪魁祸首。在每个初始化之前添加了1ms延时得以解决,或在发送命令函数前添加1ms延时。其实本次问题最大的还是延时时间问题。

   将本次问题做为记录,同时也希望给遇到相同问题的技术人一个参考,帮助大家节省时间早点解决BUG推动社会的进步。哈哈

工作条件 • 3.0V至3.6V: -40°C至+125°C, DC至100 MHz 高性能16位DSP RISC CPU • 16位宽数据路径 • 高效代码型(C和汇编)架构 • 40位宽累加器 • 带双数据取操作的单周期(MAC/MPY) • 单周期混合符号乘法: - 32位乘法支持 • 快速的6周期除法 • 零开销循环 高速PWM • 4对PWM • 最佳PWM分辨率为250 ps • 上升沿和下降沿死区 • 死区补偿 • 用于高频操作的时钟斩波 • 为以下各种应用提供PWM支持: - 直流/直流、交流/直流、逆变器、 PFC和照明 - BLDC、 PMSM、 ACIM和SRM电机 • 故障输入和限流输入 • 用于ADC触发的灵活触发配置 高速模数转换器 • 12位分辨率 • 2个专用SAR ADC内核和1个共用SAR ADC内核 • 每个内核的转换速率最高为3.5 Msps • 每个模拟通道都具有专用的结果缓冲区 • 灵活、独立的ADC触发源 • 4个数字比较器 • 4个过采样滤波器 单片机特性 • 28到48引脚的小引脚数封装,包括小至4x4 mm的 UQFN • 高I/O灌电流/拉电流 • I/O引脚上具有边沿或电平变化通知中断 • 外设引脚选择(Peripheral Pin Select, PPS)可 重映射的引脚 • 最大64 KB的闪存: - 耐擦/写次数达10,000次 - 数据保存时间至少20年 - 可在软件控制下自编程 - 可编程代码保护 - 纠错码(Error Code Correction, ECC) - ICSP™写禁止 • 8 KB SRAM存储器: - SRAM存储器内置自检(Memory Built-In SelfTest, MBIST) • 多个中断向量,带有独立的可编程优先级功能 • 用于快速中断处理的 4 组中断现场保护寄存器,包 括累加器和状态寄存器 • 4个外部中断引脚 • 看门狗定时器(Watchdog Timer, WDT) • 窗口程序监控定时器(Deadman Timer, DMT) • 具有专用备用振荡器的故障保护时钟监视器(FailSafe Clock Monitor, FSCM) • 可选振荡器选项,包括: - 32 kHz低功耗RC(Low-Power RC, LPRC) 振荡器 - 高精度8 MHz内部快速RC(Fast RC, FRC) 振荡器 - 主高速晶振/谐振器或外部时钟 - 主PLL,可由FRC或晶振提供时钟 - 用于PWM和ADC的附属PLL(Auxiliary PLL, APLL) • 低功耗管理模式(休眠和空闲) • 上电复位和欠压复位 • 片内无电容稳压器 • 256字节的可一次性编程(One-Time-Programmable, OTP)存储器
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值