蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)蓝桥杯嵌入式学习准备联系方式作者:马一飞QQ:791729359…

大家好,又见面了,我是你们的朋友全栈君。

                                                                                          蓝桥杯嵌入式学习准备

 

联系方式

作者:马一飞

QQ:791729359                                                                                                               

 

            本人参加了2018年第九届蓝桥杯嵌入式设计与开发的比赛,并拿到了国二,总的来说呢,我觉得蓝桥杯这个其实算是一个比较简单的比赛了。只要大家努力的去备赛,相信每一个人至少都能够拿到省一并进入国赛。接下来我写的文章就是记录,我蓝桥杯学习的方法、以及我自己写的代码,希望对接下来想参加蓝桥杯的朋友能够有所启发,加油!!!

             在学习蓝桥杯嵌入式方向之前,理所应当的需要前期的准备工作了。首先肯定要介绍一下蓝桥杯这个比赛了,总的来说呢,蓝桥杯这个比赛并不是一个特别难的比赛,所以大家只要好好去学习,用心去琢磨,都一定能进入国赛争取去北京的资格。我也会给大家提供我所写的代码以及方法告诉大家,当然,我所写的不一定是最好的方法,如果大家有更好的方法,欢迎跟我进一步讨论。

             蓝桥杯嵌入式里,用的开发板的主控芯片是stm32f103rbt6,那么这一款芯片也是属于ST公司里面一款比较常用,而且性价比比较高的一款芯片,芯片采用的架构是Cortex-M3,属于ARM这家公司下的一个基于微控制器的一个架构。

             我们平常在学校里学习的单片机是51单片机,或者是STC15系列的单片机,这类单片机采用的架构是8051架构,这个架构从出生到现在已经几十年的时间,属于一个比较老的架构了,因此你看到的51单片机,它所拥有的外设资源是非常少且运算速度慢(例如stc89c52晶振一般为12MHZ,且12分频)。这里说的并不是说学习51单片机的用处不大,而是说,大家早点转入ARM架构里学习,是非常好的,其实学到后面,你就会发现,ARM架构的功能,比起51架构要好很多,当你熟练了之后,甚至会感觉到ARM架构的配置比51单片机还要简单

             

              Stm32f103的主频最高可以达到72MHZ,这一点是需要大家背下来的。

              同时还有很重要的一点,我希望大家在学习蓝桥杯嵌入式之前,可以先看一下正点原子的stm32视频教程前面的部分,不需要看太多,但需要知道什么是stm32,什么是ARM,Cortex-M3到底是个什么东西。看的内容大概只需要看下面这个就差不多了。有些觉得不是重点的内容可以快进着看也没问题。(具体的视频下载地址大家可以百度搜索:开源电子网,并在里面查找视频,或者上正点原子的淘宝店,在正点原子开发板的简介那里找视频教程网址,正点原子的教学视频完全是开源免费的,下载不需要花一分钱,在开源电子网里面都可以免费下载

                                                      蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

              当我们知道了什么是ARM,什么是Cortex-M3,什么是stm32f103的时候,就可以开始进入蓝桥杯嵌入式的学习了。 

                                                                                  蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

         蓝桥杯嵌入式的板子是如左图这样子的,上面用到的模块1块LCD显示屏,4个独立按键,1个蜂鸣器,1个at24c02(EEPROM)模块,8个LED,1个电位器

             大概用到的资源就是这些,还有其他的资源,例如读卡器,RX232接口,都是用不到的。板子上的资源也就这么一点点,因此大家只需要掌握这些东西,蓝桥杯基本就稳了。

            接下来,我们就来搭建开发环境了,在蓝桥杯嵌入式的比赛中,我们使用的是MDK4,那么我们再平时练习的时候使用MDK5,其实使用起来是差不多的,MDK5的功能比MDK4强一些,并且还有提示功能(不建议太依赖这个功能,因为keil4里没有这个功能,比赛时候无法使用)。

             虽然编写stm32程序与编写51单片机的程序用的都是Keil软件,但是这个Keil软件是不同的,编写51用的是Keil-C51,编写stm32用的是Keil-ARM(也就是我们称的MDK)。

            这里,我提供给大家一个Keil的安装包,在安装前,先把你们电脑上编写51单片机程序的Keil彻底删除,安装完我提供的这个Keil安装包之后,你既可以在里面编写51的代码,也可以编写stm32的代码,甚至可以编写其他ARM系列单片机的代码非常方便。打开Keil_5这个文件夹,我们会看到有以下的软件。

                                蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

            上面4个应用程序前面都有标好1234,我们按照这个标好的顺序安装文件(记住,四个安装包安装的路径必须一样,重点!!!)例如我安装的,全部安装在D盘的keil_5文件夹下。蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)安装完之后,会看到桌面有一个Keil4和一个keil5,大家随便打开其中一个,其实无论你打开哪个,出来的都是keil5(记得按右键使用管理员模式打开)。然后进行破解,破解的过程相信不用我说了,大家用过Keil软件的应该都知道,但是需要注意的一点是,我们需要破解两次,一次是破解C51的,一次是破解ARM的,也就是要在破解机上获取两个序列号。

                                                        蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

           那么在破解成功之后你会看到有两个信息,一个是MDK-ARM,一个是PK51。 有效期至2020年,那么这个就提醒大家要在2020年之前把51单片机和stm32都得学好啊,不然你就要给钱买软件了,hhhhh!!! 那么这些都是题外话了。

           到了这一步之后,就代表你破解已经成功了,你可以使用这个keil软件,编写51代码或者编写stm32代码了。

           同时,我还会提供给大家其他的文件资料。

           蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)扩展板数据包我们先不用管,我们以后再去看,我们现在关注的呢是另外的两个文件夹。

            官网范例程序里面包含着官网提供的这个开发板对应的各个模块的范例,大家可以参考官网的程序来学习也是可以的,但是官网的程序有些写的并不是太好。

            嵌入式设计与开发项目加密资料这个文件夹里面,提供的文件,就是你在蓝桥杯考场上所能见到的文件(重点!!!)。所以,这个文件夹里面有什么东西,大家是需要完全清楚的,这意味着,你在赛场上面,有什么资源是可以利用的。

蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)这个文件夹里面提供了iic参考程序,stm32固件库,串口调试助手,coolink驱动,芯片数据手册,液晶驱动参考例程,以及蓝桥杯嵌入式开发板的电路图。

              在蓝桥杯的比赛前,我们要先打开液晶驱动参考例程,把液晶驱动参考例程的程序直接烧录到开发板里面,检测是否能够正常烧录,开发板是否有损坏,如果出现烧录不了的情况,赶紧叫工作人员帮你换电脑,一分钟都不要耽搁。一定要确定电脑里的软件,以及板子能够正常烧录,没有任何问题,再进行比赛,否则你做的一切都是毫无意义的。(重点!!!)

              那么我们再下一讲再来讲讲液晶驱动参考例程里面有什么,并且是如何烧录的。

 

                                                                                                                                                                                     (以上仅属于个人观点)

                                                 蓝桥杯嵌入式开发经验分享(1.嵌入式学习准备)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/131081.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • html中设置背景图片为平铺,html背景图片怎么设置平铺方式

    html中设置背景图片为平铺,html背景图片怎么设置平铺方式在html中,可利用background-repeat属性来设置背景图片的平铺方式;当属性值设置为“repeat”时可向垂直和水平方向平铺,“repeat-x”时可水平平铺,“repeat-y”时可垂直平铺,“no-repeat”时不平铺。本教程操作环境:windows7系统、CSS3&&HTML5版、DellG3电脑。html背景图片设置平铺方式div{border:1px…

  • git clone配置「建议收藏」

    git clone配置「建议收藏」gitclone配置

  • J2EE架构简介_手机架构

    J2EE架构简介_手机架构J2EE体系结构简介J2EE(Java2Platform,EnterpriseEdition)即Java2平台企业版,它提供了基于组件的方式来设计、开发、组装和部署企业应用。J2EE使用多层分布式的应用模型,这个多层通常通过三层或四层来实现:①客户层,运行在客户计算机上的组件。②Web层,运行在J2EE服务器上的组件。③业务层,同样是运行在J2EE服务器上的组件。

    2022年10月11日
  • 安装win10+黑苹果双系统零基础教程

    安装win10+黑苹果双系统零基础教程一、准备工作准备8g以上的U盘安装TransMac安装HasleoEasyUEFI安装DiskGenius系统镜像,格式注意是.dmg,我示范的版本为mac10.13.3二、开始动手首先进行分盘选择磁盘管理将你需要分盘的硬盘压缩新建简单卷,一路操作下去,自己命名磁盘打开DiskGenius,我分机械硬盘了300G给macOS,所有的操作都在刚才新建简单卷中进行调出前部大于3…

  • Mybatis的mapper返回map结果集(超详细讲解)[通俗易懂]

    Mybatis的mapper返回map结果集(超详细讲解)[通俗易懂]通过@MapKey指定map的key值1.在接口中写方法/***@author:xjszsd*@date:2021-12-1316:20*/publicinterfaceIAccountDao{//返回一条记录的map;key就是列名,值就是对应的值Map<String,Object>selectAll(Integerid);/***此处若将map的key的类型改为其他类型,不影响@MapKey给map的ke

  • Android之viewstub用法详解及实现延迟加载

    这一篇是接着上面的include标签的例子来讲的,地址http://blog.csdn.net/jason0539/article/details/26131831 上一篇的布局中间就用了viewstub这个控件,现在来说一下其作用和用法” ViewStub 是一个不可见的,大小为0的View,最佳用途就是实现View的延迟加载,避免资源浪费,在需要的时候才加载View”需

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号