0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

裸机编程或单片机开发

麦辣鸡腿堡 来源:嵌入式Linux系统开发 作者:嵌入式Linux系统开 2023-07-27 16:58 次阅读

计算机系统的运转是系统中软硬件共同努力的结果,没有硬件的软件是空中楼阁,而没有软件的硬件则只是一堆废铁。

硬件是底层基础,是所有软件得以运行的平台;软件则实现了具体应用,它按照各种不同的业务需求而设计,并完成用户的最终诉 求。硬件较固定,软件则很灵活,可以适应各种复杂多变的应用。因此,计算机系统的软硬件相互成就了对方。

驱动程序负责硬件和应用软件之间的沟通,而驱动工程师则负责硬件工程师和应用软件工程师之间的沟通,从字面意思来看,设备驱动最通俗的解释就是“驱使硬件设备行动”。

1、裸机编程或单片机开发

裸机编程,就是直接编写在硬件上运行的程序,没有操作系统的支持。一般我们把没有操作系统的编程环境,称为裸机编程环境,比如在单片机上编程。通过串口直接将程序下载到单片机芯片内部的 Flash 中,单片机运行时,直接调用我们编程的程序。

这时,我们编写的程序一般都有一个 while(1)的死循环存在,这样程序才能一直保持运行。裸机编程现在主要是正对低端的嵌入式系统,如 SCM(single chip machine)、各式 MCUDSP 等。当然,编写 PC 的 bootloader 肯定也属 于裸机编程。

单片机一般有中央处理器 CPU、随机存储器 RAM、只读存储器 ROM、多种 I/O 口和中断系统、定时器/计时器等功能,这其中还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等功能等集成到一块小芯片上。

单片机开发包括:程序设计(PC 端软件编程),烧写(将编程好的软件下载到单片机),单片机系统的设计(硬件电路设计)。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4983

    文章

    18295

    浏览量

    288582
  • 编程
    +关注

    关注

    88

    文章

    3441

    浏览量

    92415
  • 单片机
    +关注

    关注

    0

    文章

    168

    浏览量

    16658
收藏 人收藏

    评论

    相关推荐

    一个适用于单片机裸机开发的开源轮子

    今天推荐一个适用于单片机裸机开发的开源轮子。
    发表于 07-04 18:38 1649次阅读

    单片机编程语言和开发环境

    在《嵌入式编程单片机的基本构成、工作原理》和《嵌入式编程单片机的外围功能电路》我们介绍了单片机硬件方面的知识。本文将介绍
    发表于 08-11 10:47 5356次阅读

    单片机开发单片机编程环境都有哪些?

    单片机开发中肯定要设计程序编写的,那单片机编程环境有哪些呢?今天来聊一聊。单片机编程环境说起来
    发表于 09-28 18:16

    ARM裸机开发实战介绍

    Linux操作基础、无单片机开发经验、无硬件知识,如何学习嵌入式Linux? 到处求推荐有完整例程的书和视频,系统的学习ARM裸机编程?本期韦东山老师推出的《8周玩转ARM
    发表于 07-01 08:17

    单片机开发与Linux开发区别 精选资料推荐

    ARM-Linux的基本开发环境。1. ARM-Linux应用开发单片机开发的不同这里先要做一个说明,对于ARM的应用开发主要有两种方式:
    发表于 07-13 08:46

    基于linux的单片机开发裸机开发的区别

    1.基于linux的单片机开发裸机开发的区别\qquad单片机裸机
    发表于 11-19 08:21

    基于操作系统的编程裸机编程有哪些不同之处

    因为学的是控制,刚开始的时候玩的单片机比较多,单片机进行开发的一个重要的特点就是裸机编程。也就是说内核跑的完完全全是你的代码。但是在操作系统
    发表于 11-22 07:37

    单片机裸机开发时要处理几个任务程序呢

    单片机裸机程序框架##单片机裸机开发时,要处理多个任务程序框架:轮询系统int main(void){ init_something();w
    发表于 11-22 07:05

    单片机裸机开发时程序框架是怎样的?

    前言 前不久,我有位做测试的朋友转去做开发的工作,面试遇到了一个问题,他没明白,打电话问了我。题目大概就是:在单片机裸机开发时,单片机要处理
    发表于 12-09 07:31

    单片机裸机开发的程序框架是怎样的呢

    前言 前不久,我有位做测试的朋友转去做开发的工作,面试遇到了一个问题,他没明白,打电话问了我。题目大概就是:在单片机裸机开发时,单片机要处理
    发表于 12-09 06:44

    单片机裸机程序框架

    单片机裸机程序框架##单片机裸机开发时,要处理多个任务程序框架:轮询系统int main(void){ init_something();
    发表于 11-13 19:21 12次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>裸机</b>程序框架

    浅谈单片机裸机系统程序框架

    浅谈单片机裸机系统程序框架
    发表于 11-23 17:51 12次下载
    浅谈<b class='flag-5'>单片机</b><b class='flag-5'>裸机</b>系统程序框架

    你的单片机裸机程序框架是怎样的?

    前言前不久,我有位做测试的朋友转去做开发的工作,面试遇到了一个问题,他没明白,打电话问了我。题目大概就是:在单片机裸机开发时,单片机要处理多
    发表于 11-26 13:21 13次下载
    你的<b class='flag-5'>单片机</b><b class='flag-5'>裸机</b>程序框架是怎样的?

    单片机(裸机)程序一般怎么写?

    裸机(单片机)程序主要是相对于基于操作系统的程序开发而言,就是没有操作系统的基础上开发具有特定功能的代码。
    发表于 09-05 16:48 641次阅读
    <b class='flag-5'>单片机</b>(<b class='flag-5'>裸机</b>)程序一般怎么写?

    单片机裸机实现队列功能的方案

    单片机裸机实现队列功能的方案
    的头像 发表于 10-17 14:34 322次阅读