基于ep1c6q的数字存储示波器,ad为ad9226;
2022-11-14 11:21:13 640KB 数字存储示波器
1
什么是bootloader?本人不知道该怎么说,反正会来看这篇都是知道自己要干嘛的。不过bootloader的作用还是要提提的,bootloader最直观的作用就方便,比如你用单片机给人家做了一款产品,后期你的产品固件需要更新的时候,你总不能带着电脑直接去客户那里拆开产品给单片机下程序吧?也不能教客户怎么给单片机下程序吧?用户体验感太差。 其实本质上bootloader的也是一个完整的程序,也有main函数,有自己的中断向量表,栈顶指针,它可以检查有没有新的固件,如果有,则将新的固件的数据写入到我们指定的flash地址中,之后跳到新的程序中去就OK了。此时bootloader的优势就来了,bootloade更新固件有很多种方式,本人在这里只详细讲解一种,搞懂一种之后,其它的都好办,因为它们的思路都是一样的。Bootloader的主体原理是:首先将bin文件的数据复制到特定的地址。然后设置中断向量表,设置MSP主堆栈指针(具体请看CM3权威指南),设置复位向量。然后就没有然后了。 作者:谭建裕
2022-11-14 10:43:42 376KB bootloader sdio stm32
1
#include #include #define 天长地久 10000 #define 永远爱你 "Loving you forever!" #define 亲爱的 main #define 相信 while #define 献给 void #define 老婆 HANDLE #define 只对你说 printf #define 我的 GetStdHandle #define 初恋 STD_OUTPUT_HANDLE #define 我会好好珍惜 SetConsoleTextAttribute #define 每天想你 Sleep #define 希望 int #define 从 = #define 最初开始 0 #define 会到 <= 献给 亲爱的() { 老婆 你; 你 = 我的(初恋); 希望 我们的爱情 从 最初开始; 相信(我们的爱情 会到 天长地久) { 我会好好珍惜(你,我们的爱情); 只对你说(" %s\n",永远爱你); 每天想你(100); 我们的爱情++; } }
2022-11-14 10:41:17 8KB C 情书 C语言情书
1
简单实用Verilog HDL语句,利用反转实现50MHz转换为100hz,或1000hz,10hz,1hz.改变其中一个参数即可实现。
2022-11-14 09:57:00 224B FPGA Quartus 数字电路
1
C#写的httprequest请求调试工具,对http接口get post put调用等操作测试工具代码,非常实用,可以作为开发参考
2022-11-14 09:00:17 72KB c# http request web请求
1
自己写的C#日历控件附源码,VisualStudio2008创建
1
基于STM32F103ZET6的DHT11代码 (自己写的亲测有效) DHT11数据端口接STM32的PG11引脚
2022-11-12 16:46:42 9.01MB 传感器
1
*《数码管驱动模块》(整数) *文件:DisplayNum.c DisplayNum.h *提供现成的函数,可以直接调用完成显示 *Description: DisplayNum(unsigned long int DN_Num, unsigned char _numberSystem): 在数码管上输出任意不高于8位的DN_Num的值,_numberSystem为0代表十进制,为1代表16进制,2代表2进制 若不用定时器,则需手动定时扫描; initializeNixieTube(unsigned char TimerNumber, unsigned int updateTime)):(若用定时器扫描,自行解除中断注释) 初始化用于动态扫描的定时器定时器 TimerNumber:定时器标号 0或1 updateTime:0xFF(65536)以内的定时时间 单位微秒 void DisplayNumf(char str[], uC type): 在数码管上显示指定内容,传入字符串指针或首地址,内容只能包含数字、空格、减号。超过8位只显示8位 type:0默认,1时钟数据加点分隔xxxx.xx.xx ----------------- DisplayNum.h 头文件: ----------------- #include "reg52.h" #include //声明接口函数 extern void DisplayNum(unsigned long int DN_Num, unsigned char _numberSystem); extern void initializeNixieTube(unsigned char TimerNumber, unsigned int updateTime); extern void DisplayNumf(char str[],unsigned char type); extern unsigned char printNum[8];
2022-11-11 19:36:21 6KB C51 单片机 数码管 驱动
1
这是一个图像分割程序,可用于车牌识别
2022-11-11 19:32:27 20KB 图像分割 车牌识别
1