1.单片机如图,写3个小程序,C语言
楼主有硬件的连接吗,还是用51驱动吧。
假设单片机io口直接与数码管相连,共需要16个端口。8个与数码管行连接,8个与列连接。
把要点亮的28个点的数据放到一个数组里。采用查表的方式来实现跑马灯效果。
例如第一个点位于行8与列8,即那个(8,8)的点,它的行数据就是0b1000 0000,十六进制为了0x80,列的数据为0b0111 1111,十六进制为了0xef。 这56个点的数据放到数组LedMatrixRows[28],LedMatrixColumns[28]里,再查表显示即可。
主要程序为: unsigned char i; unsigned int j; while(1) { for(i=0;i 要加一个驱动器,如uln2003。 第三个问题要用到单片机的定时器来产生1秒定时,显示很简单,只要把那个心形的led点亮和关闭就可以了。
蜂鸣器也在点亮led时,鸣一声就可以了。同样也要加一级驱动器。
2.单片机c语言编程时会用到哪些常用的C语
关键字 用 途 说 明 auto 存储种类说明 用以说明局部变量,缺省值为此 break 程序语句 退出最内层循环 case 程序语句 Switch语句中的选择项 char 数据类型说明 单字节整型数或字符型数据 const 存储类型说明 在程序执行过程中不可更改的常量值 continue 程序语句 转向下一次循环 default 程序语句 Switch语句中的失败选择项 do 程序语句 构成do..while循环结构 double 数据类型说明 双精度浮点数 else 程序语句 构成if..else选择结构 enum 数据类型说明 枚举 extern 存储种类说明 在其他程序模块中说明了的全局变量 flost 数据类型说明 单精度浮点数 for 程序语句 构成for循环结构 goto 程序语句 构成goto转移结构 if 程序语句 构成if..else选择结构 int 数据类型说明 基本整型数 long 数据类型说明 长整型数 register 存储种类说明 使用CPU内部寄存的变量 return 程序语句 函数返回 short 数据类型说明 短整型数 signed 数据类型说明 有符号数,二进制数据的最高位为符号位 sizeof 运算符 计算表达式或数据类型的字节数 static 存储种类说明 静态变量 struct 数据类型说明 结构类型数据 swicth 程序语句 构成switch选择结构 typedef 数据类型说明 重新进行数据类型定义 union 数据类型说明 联合类型数据 unsigned 数据类型说明 无符号数数据 void 数据类型说明 无类型数据 volatile 数据类型说明 该变量在程序执行中可被隐含地改变 while 程序语句 构成while和do..while循环结构 附表1-1 ANSIC标准关键字 关键字 用 途 说 明 bit 位标量声明 声明一个位标量或位类型的函数 sbit 位标量声明 声明一个可位寻址变量 Sfr 特殊功能寄存器声明 声明一个特殊功能寄存器 Sfr16 特殊功能寄存器声明 声明一个16位的特殊功能寄存器 data 存储器类型说明 直接寻址的内部数据存储器 bdata 存储器类型说明 可位寻址的内部数据存储器 idata 存储器类型说明 间接寻址的内部数据存储器 pdata 存储器类型说明 分页寻址的外部数据存储器 xdata 存储器类型说明 外部数据存储器 code 存储器类型说明 程序存储器 interrupt 中断函数说明 定义一个中断函数 reentrant 再入函数说明 定义一个再入函数 using 寄存器组定义 定义芯片的工作寄存器 附表1-2 C51编译器的扩展关键字 附录二 AT89C51特殊功能寄存器列表(适用于同一架构的芯片) 符 号 地 址 注 释 *ACC E0H 累加器 *B F0H 乘法寄存器 *PSW D0H 程序状态字 SP 81H 堆栈指针 DPL 82H 数据存储器指针低8位 DPH 83H 数据存储器指针高8位 *IE A8H 中断允许控制器 *IP D8H 中断优先控制器 *P0 80H 端口0 *P1 90H 端口1 *P2 A0H 端口2 *P3 B0H 端口3 PCON 87H 电源控制及波特率选择 *SCON 98H 串行口控制器 SBUF 99H 串行数据缓冲器 *TCON 88H 定时器控制 TMOD 89H 定时器方式选择 TL0 8AH 定时器0低8位 TL1 8BH 定时器1低8位 TH0 8CH 定时器0低8位 TH1 8DH 定时器1高8位 带*号的特殊功能寄存器都是可以位寻址的寄存器。
3.学单片机用什么语言好
用C语言入门,入门了以后,通过看懂部分汇编语言来了解程序的运作,和每句C语句的汇编结构以及每句C语句运行多少个的机器周期。
最后到了实际工程中,还是要用C的。
千万不要试图用纯汇编编程!!
否则你可能技术水平很高但是没有公司会要你!!
因为你编的程序没有几个能看懂的,别人都用C,你无法协同工作。
用汇编编程的时间也长,公司不喜欢。
目前比较复杂的程序,协议栈,实时操作系统,都是用C了。
这时候有人该骂我了:汇编是基础,是根,没有根能行吗?
那么我请问:舒马赫需不需要精通懂设计汽车和修车?
当然不需要,他只要跟设计师说我需要一辆什么什么样的车就可以了。
舒马赫就相当于用C语言的编程者,他精通开车,懂一点汽车的原理。
汽车设计师就相当于编译器,它会通过编程者的c语句,编译成汇编来执行。
4.怎样读好单片机程序
过了C语言二级! 我给你的建议————C语言是简单 单片机编程也用不到多深度的编程,问题是你的C语言弄明白了吗,就是一些简单的程序。
我说得明白是:知道程序的编写思路,并不是你能否看懂这个程序,否则C语言算是什么也不是 就是算是知道有英语一样。 对单片机的内部结构比较了解! …………告诉你,其实内核才是最要的,应为他才是基础。
至于一个内核,你首先要知道他都有些什么,这些资源你能明白多少。初次看,肯定是一知半解,对于这些资源你首先能想到你能做些什么。
你也许写不出来程序,但是你能想到用这些资源做什么。例子我不说了。
当你把内核都了解了(建议了解三四遍——也许还要多),你才算是做到了第一步,这个时候你就可以锻炼你的思路。这个是最最重要的。
思路的好坏决定了你以后在这方面的发展 ,不要拘泥于课本。 也许初学时你并看不懂一些C语言程序。
那是应为你所看的是你没有见过的,并且你现在看到的程序并不是一个难度循序渐渐的。看不懂不要紧,先看内核,知识学习程序中的方法,自己考录其中的思路。
要想学好单片机……一定要动手,光考虑没有用。别拍花钱,再说了也花不多少~··~。
转载请注明出处番茄帮 » 单片机中用到的c语言知识(单片机如图,写3个小程序,C语言)