- 博客(53)
- 资源 (30)
- 收藏
- 关注
原创 应广单片机阻塞式编程和任务式编程区别
很多单片机的初学者容易掉入阻塞式编程的陷阱.因为阻塞式编程符合我们对现实世界的理解,一个人在一段时间内,只能做一件事情.例如要是实现1Hz的闪灯程序,那么先让单片机端口拉高500ms,然后再拉低500ms,然后循环.因为等待时间太长了,没有打开看门狗.下面是阻塞式编程的例子:#include "extern.h"/*端口定义*/BIT LED : PA.3; BIT LED1 : PA......
2020-10-06 14:10:23
4007
4
原创 应广单片机比较器测供电电源电压
应广单片机有很实用的功能,就是可以用内部的分压电阻,内部1.2v参考电压,和比较器一起,测试单片机VDD电压.厉害吧,不使用任何外部器件,测试供电的电源电压.!当电池低压的时候可以做相应的动作.比如休眠,进入低功耗等.不多说,上代码! 记得有问题可以联系我! 这个代码结构结构不是很好,布置一个作业,理解之后自己修改去.哈哈!仿真之后查看ucVolt就可以知道电源电...
2020-03-20 22:47:26
4248
原创 应广单片机开发案例
应广单片机价格美丽,性价比高,mini-c好用,适用于消费电子开发。但是案例demo太少了,为了方便大家能够快速入门。这里贴出了一份经典PMS150C的点灯程序代码。不是Hello world!那种,是偏向于实际产品的那种。涉及到的内容有不少,包括应广单片机PMS150C:1.端口输入输出配置2.Tmr16中断配置(systick),倒计时3.按键检测,包括防抖,可...
2019-12-06 23:15:35
12592
7
原创 应广单片机烧录跳线J7专用PCB使用说明
本文介绍了应广单片机烧录过程中J7跳线的简化方法。作者针对特殊封装芯片的烧录难点,设计了一个通用PCB跳线工具,通过连锡方式实现不同芯片的灵活适配。以1801芯片为例,详细说明了跳线端口连接规律和对应关系(如SGND对应pin6、SA6对应pin5等),并指出该PCB板可适配多种芯片型号,只需调整跳线位置。该工具简化了传统繁琐的跳线过程,提高了烧录效率。文章还提供了相关烧录技巧文章的参考资料,并愿意分享PCB设计文件。
2025-10-24 14:12:28
459
原创 有关应广单片机端口复用的几种用法和一些注意事项
本文介绍了应广OTP单片机的端口复用技术及其应用。通过分时复用原理,可实现单端口控制多个LED、按键检测等功能,显著提升资源利用率。具体包括:1)利用端口高、低、高阻三种状态控制多个LED;2)通过查理复用技术实现多LED驱动;3)结合硬件电路实现按键检测;4)利用内外上下拉电阻差异识别9种输入状态。文章还展示了经典应用案例,如8引脚单片机实现温度显示、数据采集和触摸检测。这些技术可有效降低硬件成本,特别适合小家电等简单控制场景。
2025-10-22 12:07:03
620
原创 有关应广单片机数据类型与ROM空间优化的一点看法
摘要:本文探讨了在应广8位单片机2K空间限制下优化倒计时项目的方案。通过对比eword(3字节)和word+byte两种实现方式,发现后者可节省40字节空间。但需注意两种方式存在精度差异:word+byte精度为1秒,eword精度为1毫秒。实验表明,在8位单片机中应优先使用8位数据类型,既能提升处理效率又节省存储空间。文章强调优化时需进行充分测试,避免因数据类型转换导致的时间误差问题。
2025-10-19 17:28:30
940
原创 有关应广编程助手中不同芯片的ADC案例的说明
本文解析了应广系列MCU中不同型号ADC的工作原理和应用案例。文章通过类比天平称重原理,强调ADC测量必须基于已知参考电压或已知被测电压。详细介绍了122、123、122B三种ADC的结构特点:122为单参考源(VDD),123增加BG1.2V参考源,122B则提供多档参考电压选择。通过20个案例说明如何利用不同参考源(VDD、BG、外部参考等)实现电压测量,特别说明了在电源电压不稳定的电池供电场景下,如何通过内部基准电压反推VDD。最后指出ADC复用和分时测量多通道的应用技巧,强调所有测量都遵循"
2025-10-09 09:55:27
624
原创 应广MTP单片机在线烧录技巧
早期应广单片机的OTP工艺只能烧录一次,调试时需频繁更换芯片,增加成本。后来推出的MTP单片机虽有所改进,但仍存在烧录限制。通过将烧录电源与工作电源分离(使用0R电阻或肖特基二极管),并优化PA5引脚设计(轻负载或串联电阻),可提升在线烧录成功率。具体方案:使用0R电阻时可加装拨动开关;使用二极管时可直接在板烧录。这些改进降低了烧录要求,使MTP单片机调试更便捷。
2025-07-29 10:16:37
677
原创 单片机flash存储也做磨损均衡
最近在做一个项目,需要保存设置数据,掉电不丢失。那么首先想到的是加个24c02,是一个eeprom,但是客户板太小,没有办法进行扩展。后面就找了一个带ee的OTP单片机,发现擦写次数有限,只有1000次,这明显就不是ee,就是一片flash。感觉1000次的擦写,太少了,那怎么样才能提高使用次数呢?
2025-03-19 12:14:31
976
2
原创 OTP单片机调试工具之—单线数据编码
1.UART(串口),这种方式在单片机和pc之间进行传输都非常常见,效率比较高,但是受标准波特率的条件限制,必须配合相应的晶体才能达到比较高的速率;以上就是3种常见的单线数据传输方式,可以根据实际需要,选择其中一种方式作为数据传输使用。3.使用红外遥控编码,其实这种方式和上述类单总线方式很相像,感觉好像是高低电平反过来就是了。这种方式是使用了归零码,这种方式的好处就是能够自同步,方便接端进行解码。/*这一段是通过宏定义和预编译,检测在当前时钟下,是否可以实现标准波特率通信*//*实际发送代码*/
2025-03-15 20:35:35
1053
原创 OTP单片机调试工具之—应广单片机ADC调试案例
这个案例是使用应广单片机ADC对可调电阻中间抽头电压值进行采样,分别用12bit和8bit进行显示,使用vdd做参考,采样数据没有进行滤波,通过串口进行传输,直接输出到‘OTP单片机调试工具’进行显示
2025-03-11 09:30:23
589
原创 OTP单片机调试工具
大部分的OTP单片机开发流程是先用仿真器进行仿真,完成之后再烧录OTP芯片进行验证,但是很多少时候会发现有一个问题,仿真器仿真都是OK的,但是一旦焊接在板上了,就往往发现有问题,这要怎么样破解呢?2.同样是预留一个IO口,但是这个IO可以输出PWM波形,用PWM的占空比多少,表示程序的运行状态,OK,这个方法感觉好一点了,可以有8bit/10bit的状态输出。1.调高通信速率,使用高速串口,比如1M,2M这种,或是使用红外编码,单总线编码方式,大幅度提高通信速率,减少打印耗时,减少对程序流程影响。
2025-03-06 18:34:41
721
原创 关于应广11Bit_PWM的一点理解
我的理解是:这个PWM可以认为是10bit半的,不是真的11bit的。只是10bit占空比的最低位可以通过DB0来控制是输出完整的(1bit)宽度的时间还是(半bit)宽度的宽度的时间,这样和10bit数据组合一下,就变成11bit分辨率。
2024-08-31 15:56:21
617
原创 应广单片机软PWM实现呼吸灯
应广单片机很多几乎所有型号单片机都自带硬件pwm,但是这些硬件pwm基本都是给调光调速或是电压调节等使用,如果硬件pwm已经用完了。那么还能实现LED的呼吸灯吗?答案是可以的。
2024-03-12 10:02:08
840
原创 应广单片机实现红蓝双色爆闪灯
继续进行点灯,今天来点简单的,红蓝双色爆闪灯,上电即可爆闪,红色接pa.3.pa.4,蓝色接pa6.和pa.7,低电平点亮LED灯,想要高电平点亮,或是驱动N管点亮灯,可以稍作修改。/*向上计数 1600就发生中断 1600/16M=0.0001s=100us,理论设计*//*注意,修改了sysclk,Reload_T16要做细微调整,可以试着改动sysclk,/*调试输出开关,关闭之后测试端口不输出了*//*配置T16 控制寄存器*//*设置计数器值*//*初始化T16*//*中断服务程序*/
2023-09-14 10:10:43
1039
原创 应广单片机跑马灯实现--阻塞式编程模式
我这边再写了一个跑马灯程序,使用阻塞式编程模式,看起来会更简单直观。对于初学者来说,阻塞式编程比较直观好理解。在一些任务单一或是任务不多的程序来说,还是不错的选择。但是建议还是采用任务式/查询式编程,这样使程序会有更好的扩展性能,减少推倒重来的可能性。好像框架结构的房子,在框架范围内添砖加瓦就好了。非框架结构的房子,要改动就很麻烦了。
2023-09-07 09:24:58
655
原创 应广单片机实现跑马灯
应广单片机处处体现其mini的特性,非常适合做各种方案开发,特别是点灯,什么跑马灯,氛围灯,遥控灯,感应灯,拍拍灯等,用应广都OK。
2023-09-04 08:39:31
1418
原创 应广单片机mini-c实现插入排序并加入log打印功能
插入排序法是一种稳定排序法,在数据量不大的情况下用起来还是不错的, 比较直观,类似在打扑克的过程中,按照大小来排列手上的扑克拍。但是因为mini-c的原因,标准算法不能直接应用于应广单片机上,我就稍作修改,然后供大家参考。
2023-08-31 16:03:04
698
原创 应广单片机实现步进电机控制
驱动步进电机有点像点流水灯,看似简单,真的是要控制好,还是需要花一番功夫。 应广单片机+两个H桥驱动就可以把两相4线的步进电机驱动起来。不多说,先驱动电机转起来再说,上代码了。
2023-07-01 17:21:00
736
原创 应广单片机用8位乘法器实现16位乘法运算
如果要实现16bit的乘法运算,那该怎么做呢,是使用IDE生产代码16bit乘法函数,还是把8bit乘法器利用起来,实现16bit乘法运算呢?根据仿真测试,用8bit乘法器实现的16bit乘法运算所需的时间比调用ide生产的乘法函数更短。
2023-02-25 09:55:43
1846
原创 应广单片机实现伪随机数/M序列产生器
由于应广这种OTP单片机资源有限,因此不支持这种stdlib.h这种库,但如果又要用到随机数怎么办呢,那就自己实现一个了。也不复杂。
2023-01-10 14:19:26
899
原创 应广单片机实现CRC计算
在单片机应用中,逻辑是基础,算法是灵魂。没有了算法就没有灵魂了。很多时候,有逻辑就够了,但是作为一个爱好者,不能只满足于逻辑,对算法还得有所研究。或许某一天,某一个项目就可以用上了。
2023-01-07 10:28:57
706
原创 应广单片机使用IHRC校准ILRC--附带产物随机数产生器
应广单片机内部有两个时钟源分别是IHRC和ILRC,IHRC频率在16M附近,ILRC一般为几十K,IHRC在烧录的时候可以进行校准,IHRC校准之后,频率还比较稳定.ILRC没有校准这个功能.由于ILRC不能在烧录的时候进行校准,而且电压和温度对ILRC有不小影响,因此每次上电去到的ILRC的时钟就有一些差别,而这个差别正好有时候可以用.就是当做一个伪随机数来用./*单片机内部RC时钟为 IHRC默认为16M,因此,IHRC/8=2M,系统时钟为2M*///记录1s后的计数器的值,即ILRC的时钟。...
2022-08-15 17:19:36
1765
原创 应广单片机mini-c中用指针实现数组数功能
在应广单片机的mini-c中,数组功能弱化,数组的下标不能是变量;比如array[i++]=0;是编译不通过的,如果要实现数组数据填充和数据拷贝,必须一个一个填充吗?不,那使用指针了.mini-c中,定义一个16bit的数就可以当成指针用.不多说,上代码1.数组的连续寻址比如2.数组的随机寻址还是按照数组原有用法;可以用指针+循环替换;2.如果数组的下标是一个变量,那就必须用指针才能实现了;3.如果数组的下标是一个固定的数,用数字原有方法就OK了;#include "...
2022-05-19 14:06:05
2255
2
原创 应广单片机工程直接更换芯片方法
应广ide在创建工程需要选择一种芯片作为当前工程的应用芯片.比如选择的是150G芯片,当最后发现容量不够,需要更换容量大的单片机pms152.那么需要重新建立新的工程,然后把代码拷贝过去吗?可以不用的.先找到.per的文件,把.chip 后面的型号pms150G改成需要的型号pms152.改完之后,重新编译一下,这时候会跳出一个当前型号的一个基本功能配置选项.按照自己需要配置一下选项,然后按OK就行....
2022-05-19 10:05:34
1094
原创 应广单片机按键程序_生产者/消费者模型
应广单片机按键检测程序,为了方便大家理解,用生产者/消费者模型去做按键检测.#include "extern.h"#define HIGH 1#define LOW 0#define DISABLE 0#define ENABLE 1#define EMPTY 0#define FULL 1#define ON 1#define OFF 0/*单位 ms*/#define RUN_TMR 15000#define LOW_POW_...
2021-11-23 09:17:34
1146
原创 应广单片机16bit查表并进行线性搜索
大部分的应广单片机只支持8bit数据查表,那16bit的数怎么查表呢?哈哈,拆分成高低直接分别存储就可以了.先做好表格,排好序,并且做了一个线性搜索.搜索到区间值就跳出循环,并记录当前位置.不多说,上代码:include "extern.h" /*表格按照由小到大排列*/void HByteTable(void){ A += 1; _Pcadd { ret 0x10; ret 0x1...
2021-11-16 16:32:06
860
原创 AD拼版工具 Embedded board array 进行PCB拼版注意事项
使用AD拼版工具 Embedded board array 进行PCB拼版注意事项 AD的Embedde board array拼版工具很方便用于PCB拼板,使用教程我就不在说了,网上有很多.但有一点要注意:AD拼版完成之后,产生的拼板PCB文件是不能直接用来PCB生产.正确做法是: 1.把单板PCB文件和拼版PCB文件同时交给生产厂家. 2.生产gerber和钻孔文件交给生产厂家, 原因: 把单板PCB...
2021-10-27 09:15:33
4277
原创 应广单片机框架程序_T16应用
T16是应广单片机唯一的一个16bit定时器,一个定时器要么用了计时,要么用来计数.一个定时器,那怎么才能够又用来计时,又可以用了计数呢?这个没有问题,在一定频率(时间)范围内配合中断使用,不仅可以用来计时计数还可以做很多事情,可以说是单片机心脏,其作用就是提供精准时间基准(TICK).就像日常生活中时钟的秒钟.滴答一下,你就知道过了1s,在单片机的应用中,一般设计滴答为100uS,基本能够满足大部分的应用. 有人要问 为啥设置为 100us,人的最快反应时间大概在40ms左右,...
2021-10-09 13:53:02
1480
3
原创 应广单片机003烧录器万能烧录方法
应广的003烧录器可以烧录MTP芯片,相比002烧录器,功能更多,检测的项目更多.但是对新手不够友好.如果设置不对,会出现无法烧录的异常报警. 下面我就说一下解决方法 1.不管使用啥封装,都把烧文件转换转换成s08 s14 或s16 这种封装的烧录文件 转换方法如下.转换完成会生产一个 xx_S16.pdk或是xx_s14.pdk,或是xx_s08.pdk的烧录文件.2.准备一个转接座,把 gnd vdd pa6 pa5 pa3 pa4 连接上,...
2021-09-01 08:57:33
5101
5
原创 应广单片机MINI-C下的RAM空间复用方法-类联合体结构
对于OTP单片机来说,设计上一般都是遵循够用,经济为原则,一般配备的RAM空间比较小。为了能够尽量节省空间,在运算不交叉的状态下,全局变量是可以复用,在不改变变量名称的状态下,mini-c支持类似联合体的方法去复用内存空间。 不多说上代码。DWORD mul_t4;/*定义名字*/WORD mul_x2;WORD mul_y2;void Word_Mul_Word (void){ // mul_t4[D] = m...
2021-07-10 11:24:29
707
原创 应广单片机003烧录器自定义封装使用技巧
应广003烧录器可以烧录MTP芯片,相比002烧录器,功能更多,但是使用复杂.有时候摸上半天也烧录不了器件.现在通过烧录器自带的用之定义封装的方法进行烧录.这样就可以节省很多时间.自定义烧录说明:具体细节可以自己去看手册.比如烧录pfs173-S16芯片.在main前面加入.writer package 16, 5,32,9,32,8,7,32,12,0x00d0,0x0090,0编译完成之后就可以直接烧录(空4格),无需package转换,方便快捷!这种写法适用于多数的
2021-03-20 15:05:47
1397
1
原创 应广单片机11bitPWM配置
应广单片机有两种硬件pwm,一种是8bit,另外一种是11bit,8bit的配置稍微简单一些.现在以pms133/psm134为例子,贴一个11bit pwm配置的例子.修改一下可以应用于应广其他系列的单片机中.要注意的是pms152的11bit pwm无法仿真,配置也稍微有点不同.在使用的时候要注意一下.再强调一遍,pms152的 11bit pwm 无法用仿真器仿真.只能通过烧片测试.计算公式如下:配置/*11bit pwm输出OK*/void PwmG0Init(vo...
2020-10-22 09:13:00
2502
1
原创 应广单片机-外部中断demo
对于一般的应用,比如键盘,充电检测灯,甚至一些通信,定时查询端口状态就OK了,但是一些特殊应用,特别是通信类的。最好还是用中断,那不多说,上代码。欢迎探讨和交流!#include "extern.h"#define DISABLE 0#define ENABLE 1#define HIGH 1#define LOW 0 #define DISABLE 0#define ENABLE 1 #define EMPTY 0#def...
2020-08-29 09:51:45
1635
原创 应广单片机Mini-c数组指针队列应用
应广单片机的mini-c对数组的支持不是那么友好,数组的下标只能是常量,不能是变量。例如可以是dat[0]=xx,不能是,dat[n]=xx。不过别急。在关上一扇门的同时,会打开一扇窗的。可以用指针实现数组的大部分功能。不多说。上代码#include "extern.h"/*************常用宏定义*******************/#define HIGH 1#define LOW 0#define DISABLE 0#defin...
2020-08-28 13:56:39
3141
12
原创 应广单片机应用之-呼吸灯
在很多的单片机方案应用中,很多都会用到到指示灯,比如流水灯,RGB七彩灯,对了还有呼吸灯.现在用PMS150C做个demo,稍作修改就可以用在pms152,pms132B灯应广其他系列的单片机中.不多说,上代码.一切尽在代码中.#include "extern.h"/*定时时间是否到了cinit*/bit FLAG_NMS;/*计数值cinit*/byte count;/*定时器初始化cinit*/word T16COUNTER;b...
2020-06-26 10:02:08
3469
原创 应广单片机002烧录器万能烧录方法
应广单片机有 单核13x 15x 17x这几个系列.但是烧录有时候要跳线啥的.后面发现,其实有一种方法,几乎通杀sop封装单片机,sop8 132除外.先使用writer把pdk文件写入烧录器. 1.跳线 CN38(P002) 2.sop8烧录座,sop8烧录座,sop8烧录器. 3.空3格. 4.按烧录按键 15x 17x系列烧录座放置方法,芯片下对齐13x系列,烧录座放置方法,芯片上对齐...
2020-05-15 13:33:44
4451
1
原创 应广单片机应用之--滚码
在些应用场合,每个单片机需要有不同的地址,比如2.4G通信.应广单片机内部没有EEPROM,那么怎么解决每个单片机有不同的地址/ID呢?滚码就是一个解决方式.先写好代码,然后在烧录的时候可以设置一个初始值和滚动步长.,在初始值的基础上,每烧录一个单片机,码字按步长增加.这样就可以在一定范围你保证每个单片机有不同的地址.常用16bit或32bit,用pms132为例子.上代码....
2020-04-23 12:24:27
6415
原创 应广单片机休眠和按键唤醒
对应电池供电的产品,在不使用的时候,单片机和外设都应该进入休眠状态,用于减少对电池电量消耗.在使用的时候又能够通过按键,或是其他信号唤醒系统,然后进入正常工作状态.在电压V3.3V的情况下,应广单片机的休眠电流几乎在2uA以下,经常测到都是一点几uA.非常不错|那么应广单片机的低功耗和按键唤醒是怎么实现的呢?不多说上代码.除了外部唤醒,还有一种机制是内部定时器定时唤醒,请听下回分解!...
2020-03-27 12:50:45
6204
XL4201中文说明书
2016-07-08
C语言宏定义技巧
2014-03-06
霍尔3144/3141资料
2016-09-07
design with mos load switch
2018-05-17
MOS 驱动电路设计和应用指南
2018-05-17
应广单片机IDE使用手册.pdf
2019-12-18
RFID Handbook.pdf
2013-07-26
XNS102完整版说明书
2018-07-20
Q-Code 范例 NY4NY5.pdf
2019-11-29
stm32的protel封装
2013-08-26
openwrt_ipk软件包功能介绍
2014-05-19
2.4k混合激励线性预测语音编码melp定点源码
2013-12-25
LUA程序设计chm
2014-05-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅