学习51单片机的第一个控制IO口的操作就是流水灯,stm32的学习我也是从一个流水灯开始,是stm32是32位机,里面有很多的寄存器,操作stm32单片机也可以使用寄存器操作,使用寄存器操作的好处就是程序的执行速度快,程序的体积小,但是,问题也有很多,比如不方便移植,stm32不同型号的寄存器是有差别的,同时开发的效率低,因为操作寄存器需要频繁地查芯片手册。
权衡了一下,我选用库函数点亮LED。
第一步,建立环境,我选用的单片机是stm32f103c8,下载器是st-link,编译软件是keil5.
首先,我需要配一个库,因为库我只需要GPIO,所以我就只用GPIO库。开始说正事。
建立几个文件夹先(显得比较专业)
说明:Doc说明文档,用来说明工程;Libraries是库函数文档用来放各种库,listings列表用来放编译时的文档,output是用来放输出文件的,project是用来放工程文件的,user是用来放用户文件的(主函数,自己写的函数,中断函数)
下面就开始往文档里放东西了,如图
这些东西是哪里得到的呢?https://www.stmcu.com.cn/寻找相应的固件库,或者我的网盘链接:https://pan.baidu.com/s/1Je-gXDjZJv3wuaQpsjCOLQ 密码:vvy6
然后建立一个keil工程
配置魔术棒
编译一下,发现有错,原因是我使用的是一个demo的it函数有些东西不适合我,删掉就行了
在编译就没问题了
上一篇:STM32F0造就盖亚智能城市崛起
下一篇:STM32——库函数开发小结
推荐阅读
史海拾趣
ACEINNA是一家专注于研发和生产惯性传感器和解决方案的公司,以下是该公司发展的五个相关故事:
公司成立和起步阶段: ACEINNA公司成立于2017年,总部位于美国马萨诸塞州。公司由来自微机电系统(MEMS)领域的资深专家和工程师共同创立,致力于开发高性能的惯性传感器和智能控制系统。起步阶段,ACEINNA主要专注于磁性惯性测量单元(IMU)和导航解决方案的研发。
技术创新和产品拓展: 随着技术的不断进步和市场需求的增长,ACEINNA不断进行技术创新,并逐步拓展产品线。公司推出了包括惯性测量单元(IMU)、惯性导航系统(INS)、车载导航系统等在内的多种惯性传感器和解决方案,广泛应用于汽车、工业、军事等领域。
市场拓展和国际合作: ACEINNA积极拓展国内外市场,并与全球各地的客户建立了合作关系。公司的产品被广泛应用于车辆动态控制、无人驾驶、精准农业等领域,赢得了客户的认可。同时,ACEINNA还与国际知名汽车制造商、工业企业展开合作,共同推动技术进步和市场发展。
持续投入研发和创新: ACEINNA不断加大研发投入,致力于技术创新和产品升级。公司设立了专门的研发团队和实验室,拥有一系列专利技术,致力于开发新产品和解决方案,满足客户不断变化的需求。
未来发展展望: ACEINNA将继续致力于惯性传感器和智能控制系统的研发和应用,不断推出更先进、更可靠的产品和解决方案,满足客户在各个领域的需求。公司将加强国际市场拓展,提升自身在全球市场的竞争力,为行业的发展做出更大的贡献。
为了更好地服务于中国市场,Futaba在2002年成立了双叶电子科技开发(北京)有限公司。该公司专营Futaba的全线产品,包括VFD真空荧光显示管和RC无线遥控设备等。这一举措标志着Futaba在全球化布局上迈出了重要一步,也为公司在中国市场的快速发展奠定了基础。北京分公司的成立不仅加强了Futaba与中国客户的联系,还促进了公司在技术、产品和市场等方面的全方位合作。
为了进一步推动技术创新和产品研发,FerriShield积极寻求与高校和研究机构的合作。公司与多所知名大学建立了产学研合作关系,共同开展新材料、新工艺的研究和开发。这些合作不仅提升了FerriShield的技术实力,还为公司培养了一批高素质的研发人才。
进入21世纪后,达方电子在技术研发上取得了重大突破,成功研发出多款具有竞争力的新产品。同时,公司积极开拓国际市场,通过与国际知名品牌的合作,将产品销往全球各地。这一阶段的成功,不仅使达方电子的营收大幅增长,也进一步提升了公司的品牌影响力。
在电感器领域取得成功后,Fastron并没有止步不前。相反,公司积极拓展业务领域,实现了多元化发展。除了电感器业务外,Fastron还成功运营了大型钣金生产业务,专门生产精密金属外壳和机电组件。此外,Fastron集团还拥有位于德国的Rapid Biomedical公司,为MRI扫描仪定制MR线圈,进一步拓宽了公司的业务范围。
随着市场的反馈和技术的不断进步,Chip Quik公司对初始产品进行了多次优化。公司不断改进焊接材料的性能,提高焊接速度和稳定性,同时降低操作难度。这些改进使得Chip Quik的产品在电子维修领域获得了更广泛的应用,公司也逐渐扩大了市场份额。
用单片机控制一电池放电,当电池电压低于2V时,就截止. 请问如何利用数码管记录放电的时间呢? 本来是打算用秒表的形式的,检测到电池底于2V时就给个电平把数码管显示停止,这样就可以知道放电放了多久 但是水平有限只会弄\"秒\"级的,再扩展到\"小时\" ...… 查看全部问答∨ |
我用Cypress的usb芯片做通讯,pc上采用winxp系统,通讯正常后,假若电脑进入"睡眠",再次开启电脑后,驱动就不能用了,用debug viewer输出的信息发现,上次的驱动还能使用,但是status的状态上发现usb设备是断开状态,我从"我的电脑"--> ...… 查看全部问答∨ |
简单说明一下自己的情况,今年刚刚毕业,由于大学四年的表现还算好就留校了。但是对于个人发展我现在是颇为迷茫,本人是计算机专业的,本来打算做一名JAVA程序员的,可是留在学校以后(留在学校作实验员)接触实验室比 ...… 查看全部问答∨ |
|
8086的程序,为什么我执行代码 板子上没反应啊 端口什么的没错。谁来帮我看看 ,代码如下 data segment ioport equ 0d400h-0280h io8253a equ ioport+280h io8253b equ ioport+283h io8255a equ ioport+28 ...… 查看全部问答∨ |
我们大家都知道MSP430具有超低功耗的工作状态,据使用手册介绍,Active Mode: 220 μA at 1 MHz, 2.2 V;Standby Mode: 0.5 μA;Off Mode (RAM Retention): 0.1 μA 但是这个也只是给出了工作电流,至于耗电量我还是没有感性的认识,比如说,我有 ...… 查看全部问答∨ |
前段时间,我弟弟要我跟他做个温度计。最近手头有点时间,翻了翻自己的元件库,找到了这些元件。本来想用上次团购的msp430G系列的做的,一想要送人的,况且430芯片不好买,反正有多的51单片机,便开始做了一个,耗时3天。多的不说,先上图。… 查看全部问答∨ |
各位好, 今天在stm32f103rb上改了个ucos-iii的任务,不知道为什么?把启动文件换成startup_stm32f10x_hd.s,系统在开发板上能正常运行,换成startup_stm32f10x_md.s就不行了,在stm32f103rb不是的使用startup_stm32f10 ...… 查看全部问答∨ |
目前在一般的LED照明市场上,存在非隔离设计和隔离型驱动电源之分。非隔离设计仅限于双绝缘产品,例如灯泡的替代产品,其中LED和整个产品都集成并密封在非导电塑料中,因此,最终用户并没有任何触电的危险。二级产品都是 ...… 查看全部问答∨ |