- 博客(7)
- 资源 (4)
- 收藏
- 关注
原创 沁恒八串口扩展芯片CH438详解(含电路例程)
很多单片机,比如51单片机,只有一个或两个串口。所以,有时会遇到串口不够用的情况,这时候可以换一款串口更多的单片机。而有时你又不想换一款单片机,那可以使用本文要介绍的八扩展串口芯片CH438。芯片是沁恒的,沁恒的芯片用了挺多,很有特色,质量也是很棒的。二话不说,先上简介。 CH438芯片的特色,在于单芯片有8个扩展串口,每个串口有128字节的FIFO,这可以节省你的单片机的RAM,同时,不容易因为没读取接收缓冲里的数据而使缓冲区溢出。CH438的访问接口是并行口,用的引脚比较多,数据脚和地址脚可共用
2020-11-20 16:07:37
9387
1
原创 常用的PCB供电电路,电源芯片,看看有没有你需要的
供电电路,是PCB都要用到的,是PCB的能量来源。电源芯片种类繁多,供电方案各式各样,在PCB设计中该怎样选择,本文将详细描述。 首先,供电电路设计,基本要考虑这些方面:1. 输入电压范围,输出电压、负载电流; 2. PCB上有多大面积可以布供电电路; 3. 是否要求低功耗,低静态电流; 4. 是否要求输入输出隔离; 5. 用直插还是SMT; 6.成本考虑。当然还要考虑到芯片级别,温度范围,有些是商业级0-70度,有些是工业级-40~80度。现在从电源芯片分类,来看应用吧。 先看看输入电压是DC低压的
2020-11-03 16:39:06
11564
原创 windows下枚举串口的方法,超好用,跟设备管理器枚举一样
做上位机,与设备通信,经常会用到串口。看到一些串口助手,像SSCOM,能自动扫描枚举PC的串口。所以后面的应用,我也加上自动枚举串口。 在网上找的资料,最多的是读取注册表里的内容,HKEY_LOCAL_MACHINE\ Hardware\DeviceMap\SerialComm" 这个方法很简单,能读到本机串口,虚拟串口,或外扩USB串口等的COM号。代码如下:typedef struct _SERIALNAMEBUF{ int SerialNum; TCHAR ppSerialName[1
2020-10-20 15:52:03
2302
原创 WK系列串口扩展芯片详解(含电路例程)
WK系列串口扩展芯片详解(含电路例程) 很多单片机,比如51单片机,只有一个或两个串口。所以,有时会遇到串口不够用的情况,这时候可以换一款串口更多的单片机。而有时你又不想换一款单片机,那可以使用本文要介绍的通过IIC来扩展串口的芯片。 成都为开微电子,在串口扩展芯片上有很多选择,有2个串口、4个串口等。本文以2串口的WK2132为例进行介绍。二话不说,先上简介。 WK串口芯片的特色,在于每个串口有256级FIFO,这可以节省你的单片机的RAM,同时,不容易因为没读取WK接收缓冲里的数据而使缓冲区溢出
2020-09-25 14:41:36
7503
6
原创 谨慎处理单片机中断,中断等价于比主程序优先级更高的线程
有些小伙伴喜欢在单片机中断里做任务,殊不知可能会因此遇到棘手的bug,然后查半天查不出个所以然。本文为了纠正这个不良习惯,对单片机中断进行阐述。 无中断时,单片机跑着主程序,当中断时,单片机进入中断服务程序。所以,中断其实是比主程序优先级更高的线程,定时中断、串口中断,每一个中断都是一个线程。既是多线程,那必然有资源共享冲突问题。所以,小小单片机,背负着“多线程”的重任。共享资源冲突,可能是全局变量访问冲突,或是函数调用冲突。 全局变量访问冲突,是在主程序中读写一个全局变量时,中断来了,在中断服务程序
2020-09-12 17:19:17
1554
1
原创 一个简单实用的MCU程序框架(非操作系统,简单调度任务) - 串口接收环形缓冲区
前面的文章介绍了一个简单实用的MCU程序框架,定时节拍的加入,这一篇文章来介绍串口接收怎样加入到框架中。 单片机的串口接收通常是在中断里。如果数据解析在串口里边,那很多跟主程序共享的资源就容易冲突了。如上一篇文章讲的,中断其实是比主程序优先级更高的线程,定时中断、串口中断,每一个中断都是一个线程。既是多线程,那必然有资源共享冲突问题。详细情况,可以查看我的另一篇博文:谨慎处理单片机中断,中断等价于比主程序优先级更高的线程。所以正确的做法,是先在中断里缓存起来,然后再在主循环判断接收缓冲区是否有数据,有则
2020-09-12 11:25:25
635
原创 一个简单实用的MCU程序框架(非操作系统,简单调度任务) - 总体介绍
一个简单实用的MCU程序框架(非操作系统,简单调度任务) - 总体介绍 单片机程序,总体上可分为跑操作系统的和没操作系统,对于无MMU的小单片机,操作系统通常是UCOS、RTOS等实时操作系统。实际上,在我的使用过程中发现,应用这类实时操作系统的场景其实非常小,更多的应用无需操作系统,要做的只有简单的几个事情。 在无操作系统的程序上,如果没有一个框架,代码凌乱、易冲突,调试程序非常麻烦。这就像刚开始写单片机程序的时候,要加个闪灯的程序,都要折腾一番。本文介绍的,是一个简单实用的MCU程序框架,简化程序开
2020-09-10 16:30:28
2045
windows下枚举串口的方法,超好用,跟设备管理器枚举一样
2020-10-20
N76E003 程序框架 例程.rar
2020-09-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人