正点原子LCD驱动移植cubeMX(一)
前言LCD 可以说是最常见的人机交互设备,买个手机,手环都带个屏幕,本文为实操性的MCU技术文章,便不赘述LCD的基本原理与技术细节,有需要的小伙伴可以去B站搜BV1Wz411B7Tf观看。
LCD驱动原理单片机上LCD驱动方式,分为两种: 一、 GPIO模拟时序 二、 FSMC模拟时序
GPIO大家都很熟悉,点亮数码管、LED,还是侦测按键状态使用的都是GPIO。那什么是FSMC,FSMC全称Flexible Static Memory Controller(可变静态存储控制器),是一种存储器扩展技术。大容量(内部flash256K以上)后缀为xC、xD、xE的stm32才会搭载。
FSMC
支持多种静态存储器类型。STM32 通过 FSMC 可以与 SRAM、ROM、PSRAM、NOR Flash 和 NANDFlash 存储器的引脚直接相连。
支持代码从 FSMC 扩展的外部存储器中直接运行,而不需要首先调入内部 SRAM。
不同的是TFTLCD有RS信号,但没有地址线。因此可以通过模拟LCD时序实现对LCD的驱动。由于是直接操作外部存储设备,相比于普通GPIO,速 ...
String To Hex
基础的将字符串转换成十六进制数#include <ctype.h>#include <stdint.h>void main(void){ uint8_t str[] = "7F3D"; uint16_t x = 0; uint8_t *p = str; while (*p) { if(isdigit(*p)){ x = x*0x10 + (*p-'0'); }else if(islower(*p)){ x = x*0x10 + (*p - 'a' + 10); }else{ x = x*0x10 + (*p - 'A' + 10); } p++; }}
AD 布线规则设定
根据PCB的设计,Altium Designer(下文简称AD)提供了10种设计规则。这些设计规则则包括导线放置、导线布线方法、元件放置、布线规则、元件移动和信号完整性等规则。
根据这些规则AD可以进行自动布局和自动布线。布线是否成功很大程度上在于布局的合理性和规则的设定,这需要设计者的设计经验。
打开“PCB设计规则和约束”对话框。该对话框左侧是设计规则的总类。左侧列出的设计规则,包括Electrical(电气类型)、Routing(布线类型)、SMT(表面元件类型)等等。
一、电气规则设计Electrical规则是设置电路板在布线时必须遵守的。
Clearance(安全距离)安全距离设置的是PCB电路板在布置铜膜导线时,元件焊盘和焊盘之间、焊盘和导线之间、导线和导线之间的最小距离。
Short Circuit(短路)短路设置就是是否允许导线交叉。
Un-Routed Net(未布线网络)该选项可以指定网络检查布线是否成功,若不成功将保持飞线连接。
Un-connected Pin (未连接管脚)该选项对指定的网络检查是否所有元件管脚都连线了。
二、Routing (布线设计)
...