随笔分类 - STM32
摘要:STM32 Option Bytes位 重置为出厂设置 JLINK 按照说明,在IAR安装目录下找到指定的运行程序JLinkSTM32.exe(D:\Program Files (x86)\IAR Systems\Embedded Workbench 6.0\arm\bin)在JLink与板子有效连
阅读全文
摘要:优化级别说明(仅供参考):则其中的 Code Optimization 栏就是用来设置C51的优化级别。共有9个优化级别(书上这么写的),高优化级别中包含了前面所有的优化级别。现将各个级别说明如下:0级优化:1、 常数折叠:只要有可能,编译器就执行将表达式化为常数数字的计算,其中包括运行地址的计算。
阅读全文
摘要:在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息: Program Size: Code=6320 RO-data=4864 RW-data=44 ZI-data=1636 代表的意思:Code :是程序中代码所占字节大小RO-data :程序中所定义的指令和常
阅读全文
摘要:关于Astyle Astyle 的全称是Artistic Style的简称,是一个开源的源代码格式化工具,可以对C,C++,C#以及Java等编程语言的源代码进行缩进、格式化、美化。Home Page: http://astyle.sourceforge.net/Project Page: http
阅读全文
摘要:mechanical,机械层keepout layer禁止布线层top overlay顶层丝印层bottom overlay底层丝印层top paste,顶层焊盘层bottom paste底层焊盘层top solder顶层阻焊层bottom solder底层阻焊层drill guide,过孔引导层d
阅读全文
摘要:转载请注明地址:http://blog.csdn.net/zsy2020314/article/details/9313093 我用的是stm32,加了1MB的外部SRAM,在使用emWin的时候,将一部分内存分配给emWin使用。其实方法很简单,传入SRAM数据总线地址即可,数据位宽我采用16bit,因为使用的SRAM是16bit的,这样做比较合适。如果是在ARM9及以上的平台上使用,依葫芦画瓢的把DDRAM的物理地址传入emWin即可,不过地址位宽一般是32位的,大小由自己决定。[cpp]view plaincopy/***********************************.
阅读全文
摘要:KEIL下分散加载文件的使用对于分散加载的概念,在《ARM体系结构与编程》书中第11章有明确介绍。分散加载文件(即scatter file 后缀为.scf)是一个文本文件,通过编写一个分散加载文件来指定ARM连接器在生成映像文件时如何分配RO,RW,ZI等数据的存放地址。如果不用SCATTER文件指定,那么ARM连接器会按照默认的方式来生成映像文件,一般情况下我们是不需要使用分散加载文件的。但在某些场合,我们希望把某些数据放在指定的地址处,那么这时候SCATTER文件就发挥了非常大的作用而且SCATTER文件用起来非常简单好用。举个例子:比如像LPC2378芯片具有多个不连续的SRAM,通用的
阅读全文
摘要:二话不说,直接给代码,如果您真想做这方面的东西,还是稍微研究下,没有现成的好类用,就需要自己了解其原理//引用空间usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Runtime.InteropServices;usingSystem.Threading;usingSystem.Collections;using Syst
阅读全文
摘要:最近在用C#调试USB程序,libusb源码是C语言的,C#用起来不方便,偶然在网上看到了LibUsbDotNet,这是开源的项目,下载后参考Example,用起来非常方便。LibUsbDotNet下载 - http://sourceforge.net/projects/libusbdotnet/我写的示例工程(附件传不上来,只能直接贴代码了^_^) - Enjoy...usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;using
阅读全文
摘要:驱动开发向来是内核开发中工作量最多的一块,随着USB设备的普及,大量的USB设备的驱动开发也成为驱动开发者手头上做的最多的事情。本文主要介绍Linux平台下基于libusb的驱动开发,希望能够给从事Linux驱动开发的朋友带来些帮助,更希望能够给其他平台上的无驱设计带来些帮助。文章是我在工作中使用libusb的一些总结,难免有错误,如有不当的地方,还请指正。 Linux 平台上的usb驱动开发,主要有内核驱动的开发和基于libusb的无驱设计。对于内核驱动的大部分设备,诸如带usb接口的hid设备,linux本身已经自带了相关的驱动,我们只要操作设备文件便可以完成对设备大部分的操作,而另外一些
阅读全文
摘要:在前面的文章中,我们已经给出了USB协议的链接地址,从这篇文章起,我们会涉及到许多USB 1.1的内容,我们的指导思想是先从熟悉USB 1.1协议入手,先使用现成的HCD和USBD,直接面对客户端驱动编程,尽快看到成果,使读者对USB的开发充满信心,进而去研究USBD和HCD的编程方法。请读者自行阅读协议,文章中有关协议的详细情况,由于会涉及非常多的文字,恕不能过多解释。1、USB系统主机端的软件结构一般来说,教科书或者协议上都会把USB主机端的软件说成有三层,第一层叫主机控制器驱动程序HCD(Host Controller Driver),第二层叫USB驱动程序USBD(USB Driver
阅读全文
摘要:如有转载请注明来自http://blog.csdn.net/cy757大家可以使用压缩包中的UsbApp.exe调试本软件idVendor为:0483 idProduct为5750。今天太晚了,明天还要上半天班,上位机软件找个时间在写一篇文章。请关注我的博客。压缩包中附带了几个编译软件典型的上位机源代码,大家可以参考下。本文中源程序的下载网址为:http://download.csdn.net/source/2918553很久没写过文章了,趁今晚有空出来露一下。最近发现很多人对STM32的USB通信很感兴趣。要将USB的通信协议搞懂确实是一个比较漫长的过程。但是USB的HID通信无论是上位机.
阅读全文
摘要://============================================================================// 文件名: USBDESC.C// 用 途: USB描述符// 作 者: shenfei5// 时 间: 2007.2.3// 版 本: V1.10//============================================================================ #include <RTL.h>#i...
阅读全文
摘要:一、应用场合USB HID类是比较大的一个类,HID类设备属于人机交互操作的设备。用于控制计算机操作的一些方面,如USB鼠标,USB键盘,USB游戏操纵杆,USB触摸板,USB轨迹球、电话拨号设备、VCR遥控等等设备。另外,使用HID设备的一个好处就是,操作系统自带了HID类的驱动程序,而用户无需去开发很麻烦的驱动程序,只要直接使用API调用即可完成通信。所以很多简单的USB设备,喜欢枚举成HID设备,这样就可以不用安装驱动而直接使用。二、USB HID类可采用的通信管道所有的HID设备通过USB的控制管道(默认管道,即端点0)和中断管道与主机通信。表1、USB HID规范定义的HID设备可用
阅读全文
摘要:使用GPRS首先需要打开串口,设置好串口的各项参数。一、AT+CMGL 读取所有短信A、读取所有的信息:第一步:at+cmgf=1 如果返回ok则继续。说明:AT+CMGF SELECT SMS MESSAGE FORMAT第二步:at+cmgl=”all”成功返回OK否则ERROR+CMGL: 1,"REC READ","+8613702936376",,"05/12/16,09:04:43+00"testOKB、读取未读的信息第一步:at+cmgf=1如果返回ok则继续。第二步:at+cmgl=” rec unread”成功返回O
阅读全文
摘要:AT+CFUN=1,1 //此命令可以开启simcom模块的大部分功能,一般在初始化模块的时候都要写上;AT&F //设置缺省制造商当前所有参数测试网络情况AT+CSQ //+CSQ: 28,0 返回信号强度,10以上就可以AT+CREG? //+CREG: 0,1 测试网络注册情况,第二个参数为1或5就可以AT+COPS? //+COPS: 0,0,"CHINA MOBILE" 测试运营商电话AT+CHFA=1 //0/1此命令用来切换两个音频通道AT+CLIP=1 //来电显示ATH //断开现有连接/挂断电话ATA //接听电话AT+VTS="dt&
阅读全文
摘要:名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ... ); int scanf( const char *format [,argument]... ); 说明: sscanf与scanf类似,都是用于输入的,只是后者以屏幕(stdin)为输入源,前者以固定字符串为输入源。 其中的format可以是一个或多个 {%[*] [width] [{h | l | I64 | L}]type | ' ' | '\t'
阅读全文
摘要:J-LINK:是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有绝大部分arm核soc芯片的仿真。市面上J-LINK大多都是盗版的,采用芯片为AT91SAM7S64。自己copy一个板子,在网上下一个固件一烧写就搞定。有时候固件会出问题,指示led不亮了,usb无法识别了,除非芯片坏可,一般重新烧写一下固件就好了。固件烧写步骤网上都有,我对其原理进行了补充:1、拉高55号管脚(ERASE),把将内部程序擦除掉。2、拉高40号管脚(TST),确保重新上电之前TST,PA0/PGMEN0,PA
阅读全文
摘要:第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口);I2C(INTER IC BUS:意为IC之间总线)UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)第二,区别在电气信号线上:SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现 多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。主从设备间可以实现全双工通信,当有多个从设备时,还
阅读全文
摘要:/* Code starts here - call it GPSLogger_v2.1 :) */// this is a generic logger that does checksum testing so the data written should be always good// Assumes a sirf III chipset logger attached to pin 0...
阅读全文

浙公网安备 33010602011771号