
单片机
文章平均质量分 76
anobodykey
小人物
展开
-
使用xmake构建STM32程序
主机环境:Windows 7 SP1编译器版本:gcc-arm-none-eabi-7-2017-q4-major-win32目标板:STM32F103C8T6单板STM32库版本:STM32Cube_FW_F1_V1.6.0XMAKE版本:2.1.9之前一段时间一直在思索跨平台开发的问题,以前开发STM32用的是MDK开发环境,但该软件又只能在Windows平台使用,跨平台的集成开发环境有SW4...原创 2018-05-06 15:11:07 · 3125 阅读 · 1 评论 -
Cortex-M单片机下载数据到外部flash
主机环境:Windows 10 64bit开发环境:MDK 5.23目标板:LPC54114之前在NXP社区得到一块LPC54114的板卡,是由万利制作的,LPC54114是一款双核MCU,包含了一颗M4主核和一颗M0+从核,利用该板卡学习了一下双核MCU的开发流程,板卡中提供了一颗W25P80FLASH,之前拥有的板卡都没有挂外部FLASH,刚好之前利用LPC54608学习Touch原创 2017-08-29 22:47:31 · 5471 阅读 · 2 评论 -
LPC54608生成PDF文件
主机环境:Win10 64bit开发环境:MDK5.23目标板:LPC54608之前在NXP论坛里得到了一块LPC54608开发板,最吸引人的地方是带了一块屏,如下图:这也是第一次接触NXP的开发板,之前一直都是用的ST的MCU,NXP的库跟ST的还是差别蛮大的,自我感觉ST的开发入手要快一些,而NXP的相对慢一些,入手开发板之后就看了库里面自带的一些基本驱动例程,只熟悉了原创 2017-06-17 22:48:50 · 2757 阅读 · 2 评论 -
uip1.0 学习笔记--NUC472
主机环境:Windows 7 SP1开发环境:MDK5.18目标板:NUVOTON NUC472之前领了一块新唐的NUC472开发板一直没有动,吃了很久的灰,后来接触了一下新唐的M451芯片,休闲之余把NUC472开发板拿出来研究了一哈,该开发板只有两个接口以太网接口和一个USB接口,当然所有引脚是都引出来的,如下图所示:该开发板刚好可以用来研究一下网络的开发,之前一直在使原创 2016-08-13 15:58:23 · 3873 阅读 · 1 评论 -
C语言字节对齐
主机环境:Windows 7 SP1 64位开发环境:Code::Blocks16.01这几天在看一个JPEG编码的库代码时看到了一个关于字节对齐的预处理指令#pragma pack(n),之前也偶遇过这类指令,但也没去研究过,现在就整理一下有关字节对齐的问题,以便日后查阅,跟这个有关的指令还有一类:__attribute__((aligned(n))),下面就分别分析一下这两原创 2016-06-22 22:50:46 · 1136 阅读 · 1 评论 -
STM32 UVC学习笔记3
主机环境:Windows 7 SP1开发环境:MDK5.18目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library继续昨天的学习笔记,之前提到从USBTrace软件中抓取的数据跟图像原始数据做对比是没有丢失数据的,只是在传输过程中有一半的数据包出现了错误,由此导致我们在PC上一直无法获取到正常的图像,从而原创 2016-06-16 20:22:33 · 7729 阅读 · 1 评论 -
STM32 UVC学习笔记2
主机环境:Windows 7 SP1开发环境:MDK5.18目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library承接前文,动手之前看见昨天的文章居然有900+的阅读量,我还震惊了好久,之前写的一些东西隔天一般就十几二十的阅读量,这次居然直接上升了一个数量级,由此,可以看到大家对于STM32 UVC的学习原创 2016-06-15 21:21:57 · 7950 阅读 · 1 评论 -
STM32 UVC学习笔记1
主机环境:Windows 7 SP1开发环境:MDK5.18目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library距离之前的STM32 USB学习又过去了N个月,想起最初想学习USB的初衷就是学习一下UVC协议,了解一下图像的传输,在逛STM32社区的时候有看到一句话:以前使用单片机必须熟悉I2C、SPI原创 2016-06-14 22:20:10 · 19055 阅读 · 2 评论 -
STM32 USB学习笔记9
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在我们来分析VCP例程的最后一个文件USB设备类的usbd_cdc文件,该文件跟CDC类紧密相关,看下其头文件的一些定义:/** @defgroup usbd_cdc_Exporte原创 2016-03-13 15:39:15 · 10877 阅读 · 9 评论 -
STM32 USB学习笔记8
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在分析USB器件库核心文件的最后一个文件usbd_ctlreq,该文件提供了标准请求的处理,跟USB2.0协议的第九章节紧密关联。在Setup阶段根据bmRequest字段的内容分为:设备请原创 2016-03-11 11:05:52 · 6386 阅读 · 0 评论 -
STM32 USB学习笔记7
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在来分析一下USB器件库中核心文件usbd_ioreq,相对于usbd_ctlreq来说usbd_ioreq文件的代码量要小一些。该文件的主要作用是为控制端点提供IO请求API,更准确来说是原创 2016-03-08 17:53:17 · 5728 阅读 · 0 评论 -
STM32 USB学习笔记6
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在来分析哈USB器件库代码,先来看usbd_core文件,其头文件只有一些函数声明,没啥可说的,只有一点,之前分析usbd_conf.c文件时里面USB中断回调函数中调用的底层接口都是在us原创 2016-03-08 14:32:16 · 15971 阅读 · 0 评论 -
STM32 USB学习笔记5
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library原创 2016-03-03 16:13:41 · 8768 阅读 · 1 评论 -
STM32 USB学习笔记4
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library原创 2016-02-25 11:35:47 · 15399 阅读 · 0 评论 -
STM32 USB学习笔记3
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_Library现在开始分析VCP示例代码,从最简单的usbd_desc开始。USB设备使用描述符来报告其功能特性,描述符是一个已知格式的数据结构,USB规范中定义了以下几种描述符:Device(设备)、Devi原创 2016-02-18 15:09:18 · 15385 阅读 · 2 评论 -
STM32 USB学习笔记2
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:STM32F103C8T6开发库:STM32F1Cube库和STM32_USB_Device_LibrarySTM32Cube库中提供了一些有关USB的例程,在其工程目录下的Applications目录中,这里打开STM3210E_EVAL目录,可以看到如下例程:这里原创 2016-02-17 11:46:12 · 13505 阅读 · 1 评论 -
STM32 TFT学习笔记——触摸屏
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0SD卡:Kingston 16GB Micro SDHC Class 10触摸IC:XPT20原创 2015-08-16 15:09:30 · 8401 阅读 · 4 评论 -
STM32 TFT学习笔记——SD卡读写
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0本TFT模块是带有SD卡插槽的,之前连线一直没接,现在可以使用了,对于该TFT模块来说一副原创 2015-08-05 17:31:38 · 23371 阅读 · 1 评论 -
STM32 TFT学习笔记——刷字符
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0刷完图片之后,很自然就想进行刷字符实验,该刷字符实验其实跟刷12864液晶屏字符是一样的,原创 2015-08-01 17:48:38 · 3271 阅读 · 0 评论 -
STM32 TFT学习笔记——刷图
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0做完刷屏之后就可以很容易实现刷图操作,唯一不同的是刷屏是我们自己写入颜色数据,而刷图你得获原创 2015-07-30 13:55:27 · 3721 阅读 · 2 评论 -
STM32 TFT学习笔记——刷屏
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0之前已经正确读取了ILI9325的ID号,现在编辑以下刷屏代码,以固定颜色填充满整个LCD原创 2015-07-29 12:00:58 · 7917 阅读 · 1 评论 -
STM32 TFT学习笔记——读取ID
主机环境:Windows 7 SP1开发环境:MDK5.14目标板:ST NUCLEO-F303RETFT型号:2.4英寸,带触摸,SD卡,240*320分辨率,26万色驱动IC:ILI9325ST库版本:STM32Cube_FW_F3_V1.1.0之前ST社区搞活动抢了一块NUCLEO-F303RE的开发板,本来是想研究一哈USB开发的,后来拿到手之后发现硬件不得原创 2015-07-28 11:52:04 · 7945 阅读 · 0 评论 -
STM32L0xx_Hal_Driver库的使用--EXTI
单片机型号:STM32L051C8T6开发环境MDK5.12库版本:STM32L0xx_HAL_Driver V1.1.0主机环境:Windows XP 之前碰到的串口问题还没解决,现在在学习EXTI时又遇到了新的问题。。。很是无语在编写EXTI时因为需求特殊需要统计一些IO口的信号频率,信号分为两大类共3种,Oscillator信号其频率在256HZ左右,原创 2015-04-24 17:48:50 · 6834 阅读 · 1 评论 -
STM32L0xx_HAL_Driver库的使用——UART续
单片机型号:STM32L051C8T6开发环境MDK5.12库版本:STM32L0xx_HAL_Driver V1.1.0主机环境:Windows XP承接上文,为采用双缓冲机制,重新开辟一个500字节的空间aTxBuffer来存放所需发送的字节,初始化uart_snd的指针 uart_snd.front = aTxBuffer; uart_snd.rea原创 2015-04-10 08:48:30 · 18733 阅读 · 16 评论 -
STM32L0xx_HAL_Driver库的使用——UART
单片机型号:STM32L051C8T6开发环境MDK5.12库版本:STM32L0xx_HAL_Driver V1.1.0主机环境:Windows XP之前一直使用的STM32F030C8T6单片机来做开发,因需求更改更换了一个新型号STM32L051C8T6,主要是用到了其低功耗特性,本以为直接把代码拷贝一下就可以使用了,结果是太天真了,STM32F030C8T6使用的库是STM原创 2015-04-09 16:24:24 · 40709 阅读 · 9 评论 -
FreeRTOS学习笔记——精准延时
主机环境:Windows开发环境:MDK4.7.2FreeRTOS版本:FreeRTOS8.1.2目标环境:STM32F030C8T6FreeRTOS中除掉基本的延时函数以外还有一个精准延时函数vTaskDelayUntil(),它可以实现相较于vTaskDelay()更加精准的延时,一般用于实现一个固定执行周期的需求(当你需要让你的任务以固定频率周期性的执行时),原创 2014-12-20 16:19:32 · 14539 阅读 · 1 评论 -
FreeRTOS学习笔记——SysTick中断
主机环境:Windows开发环境:MDK4.7.2FreeRTOS版本:FreeRTOS8.1.2目标环境:STM32F030C8T6FreeRTOS中关于时间的管理分为两部分:一部分是任务的延时管理;前面叙述过一些,还有一部分就是SysTick中断,管理任务的延时时间。SysTick是由STM32内核提供的,时钟源可选,用于产生FreeRTOS所需要的系统时钟,且原创 2014-12-06 21:45:08 · 22902 阅读 · 2 评论 -
FreeRTOS学习笔记——任务延时
主机环境:Windows开发环境:MDK4.7.2FreeRTOS版本:FreeRTOS8.1.2目标环境:STM32F030C8T6FreeRTOS的任务有以下几种状态:运行态、就绪态、阻塞态、挂起态,如下图其中如果任务调用了延时函数就会进入阻塞态,延时函数有两个:vTaskDelay()和vTaskDelayUtil()前者是相对延时,后者是绝对延时,可原创 2014-11-30 20:42:20 · 9816 阅读 · 0 评论 -
FreeRTOS学习笔记——创建任务
主机环境:Windows开发环境:MDK4.7.2FreeRTOS版本:FreeRTOS8.1.2目标环境:STM32F030C8T6原创 2014-11-24 13:31:32 · 7086 阅读 · 0 评论 -
FreeRTOS学习笔记——链表
主机环境:Windows开发环境:原创 2014-11-22 23:51:15 · 4870 阅读 · 0 评论 -
STM8输入捕获
最近在用STM8的过程中需要用到一个频率检测的功能,还好原创 2014-09-04 20:08:41 · 17480 阅读 · 9 评论 -
C51中的预定义宏
本文转自:http://www.dpj365.com/article/mcu/20101213-105.html Cx51编译器提供了下列预定义的常量,它使你可以用预处理器指令和C代码来创建可移植程序。常量说明类型__C51__C51编译器的版本号(例如,810代表版本8.10)。数值转载 2013-11-21 13:55:44 · 1855 阅读 · 0 评论 -
I2C总线--C语言
本文转自:http://www.cnblogs.com/BitArt/archive/2013/06/01/3112042.html为了加深对I2C总线的理解,用C语言模拟IIC总线,边看源代码边读波形:如下图所示的写操作的时序图:读时序的理解同理。对于时序不理解的朋友请参考“I2C总线之(二)---时序”完整的程序如下:#include#defi转载 2013-10-09 19:43:20 · 1911 阅读 · 0 评论 -
I2C总线
本文转自:http://www.cnblogs.com/BitArt/archive/2013/05/28/3103917.html一、协议 1.空闲状态 I2C总线总线的SDA和SCL两条信号线同时处于高电平时,规定为总线的空闲状态。此时各个器件的输出级场效应管均处在截止状态,即释放总线,由两条信号线各自的上拉电阻把电平拉高。 2.起始位与停止位的定义:转载 2013-10-09 19:39:55 · 1346 阅读 · 1 评论