自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 ucosiii源码注释

ucosiii系统源码注释

2022-04-13 10:34:44 726

原创 一次AD波形的疑惑

ST单片机,配置4通道,DMA读取。进ADC前有个放大器做的电压跟随,结果测量管脚波形时发现,即便输入端为0V,输出端(进单片机)也会有周期性波动,如下图:还以为是放大器出了问题,或者是地线不干净啥的,搞好久搞不掉这个波动。后来发现是因为AD模块在周期性的切换通道导致的,至于为啥切换的时候会有这种上冲(只在接0V时,不同的电压还会有可能是下冲),搞不清,知道怎么来的就行了吧哎,浪费几天时间。...

2021-07-02 17:52:41 396 1

原创 FATFS能读不能写

STM32F103RC芯片,SPI口读写SD卡,用的是正点原子的程序,操作过程中能正常读文件,写文件时报错FR_DISK_ERR,单步调试会有硬件错误,程序会挂掉。不明就里的解决办法:增加了一段延时#if _USE_WRITEDRESULT disk_write ( BYTE pdrv, /* Physical drive nmuber (0..) */ const BYTE *buff, /* Data to be written */ DW...

2020-12-22 17:14:52 534

原创 AD小技巧

AD操作

2019-01-06 11:45:29 3026

原创 STM32F103的I/O口输入、输出电流的大小,I/O口注入电流

I/O口灌电流拉电流(输入输出的电流)特性查手册5.3.14 I/O port characteristics General input/output characteristics谷歌翻译:GPIO(通用输入/输出)可以吸收或提供高达+/- 8 mA的电流,并且吸收或提供高达+/- 20 mA的电流(使用放宽的VOL / VOH)。在用户应用中,可以驱动电流的I / O...

2019-01-03 13:53:19 31102

原创 无法将类型为“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Ex

C#2010环境,装了Office2010及WPS软件,因为一些原因把WPS软件卸载了,运行程序将数据导出到Excel时报错:无法将类型为“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Excel._Application”。此操作失败的原因是对 IID ...

2018-11-29 23:55:58 24157 2

原创 Pin Swapping Not Avail

AD13画图时器件管脚总是变绿,规则检查报错Pin Swapping Not Available,一时找不出原因。后发现是自己之前有敷地,为了方便看图,又将敷地给隐藏了,这样器件换个位置管脚就都是绿的,。...

2018-04-06 11:40:04 4843

原创 RC522读M1卡原理图及调试

原理图及代码网上有蛮多,用的图如下: 天线线宽15mil,线圈做了4圈,尺寸30mmx50mm,如下, 做好后,发现读卡距离20mm左右,差些的卡能到10mm去了,距离太近。最后的调整方案是将红框中的电容值由180pF调整到120pF,读卡距离能达到50mm左右,基本可以了,over。

2017-08-30 13:49:22 25523 18

原创 程序死在while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET)处

芯片:STM32F030C8 调试环境:Keil uVision5 问题:调试SPI读写FLASH芯片W25Q32时,程序死在while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET)处,不管是在线仿真还是程序下载到芯片内都不行,将此语句改成直接寄存器操作也不行。 解决的方案:按论坛的方法,将该语句替换为while(SPI_

2017-07-12 12:26:46 20517

原创 C# byte转为16进制字符串~~~ToString()格式

byte bb = 0X0B;string s1 = bb.ToString(); //S1="11"string s2 = bb.ToString("x"); //S1="b"string s3 = bb.ToString("x2"); //S1="0b"string s4 = bb.ToString("X2"); //S1="0B"string s5 = bb.ToS

2017-05-12 17:01:17 25579

原创 Keil环境,在调试STM32中犯过的错

1、貌似的变量冲突 程序中有一个全局变量赋值gUI = 0x0A;可是发现gUI并没有获得这个值,而是另一个位于RAM区首地址0x2000 0000的全局变量获得了这个值,感觉奇怪,堆栈溢出? 后来检查发现,在程序的前一个子函数中有语句:char ID[8];sprintf(ID, "%02X%02X%02X%02X", Card_Id[0], Card_Id[1], Card_Id...

2017-03-17 21:27:40 1751

原创 STM32L151C8周期性从待机模式唤醒(RTC Wakeup Timer)

#include "stm32l1xx.h"#include "system_stm32l1xx.h"#include "OLED.h"#include "delay.h"void RtcWakeUpConfig(void);u8 RtcInit(void);u8 RtcConfig(void);int main(){ DelayInit(); //延时初始化 RC

2017-03-16 22:55:15 14048 2

原创 芯片上电休眠或者JTAG禁用后怎么下载程序

—STM32器件,keil环境,一不小心上电就进入了待机模式,没法正常步骤下载程序了,怎么办? —解决办法:按住芯片复位键不放,再点击下载,此时编译环境刷提示信息,此时快速释放复位键,一般即可下载成功。简而言之,按住复位键,点击下载程序,择机释放复位键。JLink info:DLL: V4.66 , compiled Mar 11 2013 11:00:46 Firmware: J-Link A

2017-03-13 17:25:56 4587 1

转载 C#延时程序

在C#窗口程序中,如果在主线程里调用Sleep,在Sleep完成之前, 界面呈现出假死状态,不能响应任何操作! 下边实现的是非独占性延时函数,延时过时中界面仍可响应消息:public static void Delay(int milliSecond){ int start = Environment.TickCount; while (Math.Abs(Environment.

2017-01-07 18:18:37 24976 3

转载 <转>Keil硬件仿真调试时,看一段程序运行的时间

为了保证在MDK中读取正确的程序运行时间,必须对仿真器的跟踪项进行设置。   以J-Link为例。   在工程的“Options for Target…”目标选项界面中,选择标签“Debug”,进行调试设置界面,选择使用“Cortex-M3JTAG”作为仿真器,然后点击右侧的“Settings”按键,进入J-Link设置界面。   点击标签“Trace”进入跟踪设置界面,将“Core C

2016-11-08 20:00:51 13206

转载 <抄>STM32 定时器有时一开启就进中断的问题

http://www.51hei.com/bbs/dpj-40940-1.html整理:MilerShao     在用到STM32定时器的更新中断时,发现有些情形下只要开启定时器就立即进入一次中断。准确说,只要使能更新中断允许位就立即响应一次更新中断【当然前提是相关NVIC也已经配置好】。换言之,只要使能了相关定时器更新中断,不管你定时间隔多长甚至不在乎你是否启动了相关定时器

2016-11-08 16:46:45 4042 2

原创 C# DateTime

string date_time1 = DateTime.Now.ToString("yyyyMMddHHmmss"); string date_time2 = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss"); string date_time3 = DateTime.Now.ToString(

2016-09-02 18:03:35 1657

原创 C#小代码

小代码

2016-08-26 22:58:04 1390

原创 C# Timer

Timer控件主要会用到2个属性一个是Enabled和Interval Enabled主要是控制当前Timer控件是否可用 timer1.Enabled=false;不可用 timer1.Enabled=true;可用 timer1.Interval=1000;主要是设置timer1_Tick事件的时间,单位为毫秒 基本用法: timer1.Interval = 500; timer1

2016-08-26 22:32:34 2757

转载 C# TextBox

我们在使用C# TextBox进行开发操作的时候经常会碰到C# TextBox的使用,那么C# TextBox的使用有没有一些常用的技巧呢?如C# TextBox换行的处理,其实就是一些常用的操作,那么这里就向你介绍几个我们常见的需求以及解决方法。 一、关于C# TextBox全选的判断: int SelectLength=this.textBox1.SelectionLength;//获取选中

2016-06-18 22:12:44 1996

原创 C#简单上位机遇到过的问题

1、串口接收函数中调用的MessageBox.Show()不能总是显示在最上层,当点击别的地方时会跑到下层,但是在别的函数中没有这个问题 解决:使用显示方式如下MessageBox.Show("xxxx", "xxxx", MessageBoxButtons.OKCancel, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1,

2016-06-17 16:04:58 1341

原创 C# ListView控件制作表格:添加行,删除行,右键删除行

添加行、删除行、插入行、删除多行、右键删除行、修改单元格内容

2016-06-08 15:20:04 4453 1

转载 C#字节数组操作

数组操作

2016-06-05 11:41:04 2985

转载 C#字节数组转换成字符串<转>

C#字节数组转换成字符串如果还想从 System.String 类中找到方法进行字符串和字节数组之间的转换,恐怕你会失望了。为了进行这样的转换,我们不得不借助另一个类:System.Text.Encoding。该类提供了 bye[] GetBytes(string) 方法将字符串转换成字节数组,还提供了 string GetString(byte[]) 方法将C#字节数组转换成字符串。System.

2016-06-03 23:38:51 7183

转载 <抄>#define 用法集锦

#define 用法集锦

2016-04-19 19:26:11 815

原创 STM32F103一些细节

当I/O端口被配置为输出时:● 输出缓冲器被激活─ 开漏模式:输出寄存器上的’0’激活N-MOS,而输出寄存器上的’1’将端口置于高阻状态(PMOS从不被激活)。─ 推挽模式:输出寄存器上的’0’激活N-MOS,而输出寄存器上的’1’将激活P-MOS。● 施密特触发输入被激活● 弱上拉和下拉电阻被禁止● 出现在I/O脚上的数据在每个APB2时钟被采样到输入数据寄存器

2015-12-05 17:38:49 876

原创 keil调试:局部变量地址和全局变量地址重叠

最近keil中调试STM32程序时,出现的问题是局部变量冲掉了全局变量的数据。 查资料,原因是局部变量定义在栈中,栈在RAM区,由系统自动管理,查看map文件可以看到栈区空间位于在系统计算的实际需要的RAM大小的最后部分(不是RAM区的最后),栈的大小在系统启动文件中默认设置好了,Stack_Size EQU 0x00000400,只有1k,而我在定义局部变量时,搞了个4k的数组

2015-11-21 13:10:50 7297 1

原创 JLink Warning: CPU could not be halted

第二版原理图,芯片STM32F103C8T6,KEIL开发环境,JLINK V8仿真器,VCC/GND/SWD/SWI四线仿真模式,出现的问题是能下载程序也能正常运行,但是不能调试,一旦调试,就会出现下面报错。**JLink Warning: CPU could not be halted***JLink Error: Can not read register 15 (R15) whil

2015-11-03 22:00:19 35310 5

原创 STM32F103内部弱上拉弱下拉电阻阻值的大小

内部上拉下拉电阻阻值典型值40K欧。查STM32F103x6/STM32F103x8/STM32F103xB的DATASHEET的5.3.12 I/O port pin characteristics如下:红框中所示为内部弱上拉和下拉电阻阻值。

2015-10-30 22:41:58 28761

原创 STM32F103C8T6低功耗测试(待机模式)

只测试了待机模式,待机模式实现系统的最低功耗。 原理图如下,一开始全部焊接了,其中S2用来进入待机,S1用来唤醒 测试程序为:#include "stm32f10x.h"#include "system_stm32f10x.h"void Sys_Standby(void){ RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, E...

2015-10-30 21:28:38 35514 4

转载 sprintf函数应用

sprintf函数应用来自《CSDN 社区电子杂志——C/C++杂志》 E-jL"H*  :4RD .l  在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。 1}nrVn[B

2015-10-25 09:49:58 1476

转载 sizeof()用法汇总

sizeof()功能:计算数据空间的字节数1.与strlen()比较      strlen()计算字符数组的字符数,以"\0"为结束判断,不计算为'\0'的数组元素。      而sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示。2.指针与静态数组的sizeof操作      指针均可看为变量类型的一种。所有指针变量的sizeof 操作结果均为

2015-10-16 21:08:01 381

原创 JLink Warning: T-bit of XPSR is 0 but should be 1. Changed to 1.

环境:KEIL5,JLINK V8驱动,STM32F103程序,SW下载模式 问题的产生:是在我又装了个JTAG驱动试验了下直接烧写HEX文件,然后又卸载了新装的驱动,随后在KEIL5环境中下载时就烧写不进去了,出现了上面的警告。 解决的办法:将下载速度有2M改为了100K才能正常下载了。 但这个解决方案看来不完美,速度慢了点,不知卸载驱动再重装能否解决,懒惰,不想尝试,将就着这么用着先。

2015-10-11 19:43:14 18347 1

转载 function "assert_param" declared implicitly || Undifined symbol assert_param__stm32

解决方法很简单,MDK的在工程上点右键,选择options,选择C/C++选项,在defined的框里填上USE_STDPERIPH_DRIVER就可以了。提示function ‘assert_param’ declared implicitly的警告和错误 这个问题原因是由一个宏开关没有打开!这个宏USE_STDPERIPH_DRIVER开关需要打开,就不会有这个告警、错误,Option

2015-09-11 15:15:40 1645

原创 CRC校验代码整理

CRC

2015-08-07 12:23:41 3882

转载 <转>(Kinetis K60)flash读写

飞思卡尔

2015-07-30 14:52:25 2203

原创 Error 1310 Error writing to file:C:\Windows\...*.dll. Verify that you have access to that directory

一次手滑引发的悲剧

2015-07-25 11:04:59 17701 10

原创 PWM例程__MK20DX128VLH5_K20系列

K20,PWM

2015-07-19 12:12:05 822

原创 PIT设置_中断优先级设置__MK20DX128VLH5_K20系列

中断,PIT,K20

2015-07-19 11:49:57 1695

原创 MC9S08DZ时钟初始化

看文档MC9S08DZ60,系统时钟分配图如下: 上电复位默认进入时钟模式为FEI 如果不进行时钟配置,假定内部为32K,BDIV复位默认为01,那么MCG主输出频率MCGOUT=32K/2*1024≈16M,也就是说复位默认MCG模块主输出频率约16M,总线时钟约8M。 时钟的切换: 如下为初始化为外部时钟模式(FBE):/***************************

2015-07-14 17:12:55 2996

CRC校验原理代码

crc校验的原理、代码等,自己留着学习用,还没来的及看全。

2015-08-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除