推荐阅读最新更新时间:2024-05-03 02:06
PIC16F917 内部AD练习程序
/*************PIC16F917单片机程序*************************/ /**************************************************************/ /*****File Function : 内部AD练习程序 *****/ /*****Program Author : ZhengWen(ClimberWin) *****/ /*****MCU : PIC16F917 内部晶振 *****/ /*****Compile Date : 2014/08/17 *****/ /*****Edi
[单片机]
2440裸机程序——按键中断
工程当中需要添加 S3C2440A.s ;2440lib.c;main.c;keyscan.c这段四个程序。 主程序: /********************************************************************************************* * File name: main.c * Author: ZXL * Description: 按下按键,相应的LED灯点亮且蜂鸣器响,由于触发了外部中断,通过串口向电脑发送是哪一个外部中断源触发了中断。 * History: 2013.5.6 ***********************************
[单片机]
按钮 温度 红外三种方式控制电机转速的单片机程序
电路原理图如下: 单片机源程序如下: #include reg51.h #include intrins.h unsigned int times; unsigned int controlway; unsigned int flag=0; unsigned int flaghongwai=0; //电机控制 sbit out3=P2^2; sbit out1=P2^0; sbit out2=P2^1; //按钮控制 sbit button=P1^0; sbit buttonup=P1^6; sbit buttondown=P1^7; //温度控制 sbit DQ=P3^7; sbit temp=P1^1; //红
[单片机]
Android系统下CAN总线的驱动程序开发实现
嵌入式操作系统Android下CAN驱动程序的实现,不但需要在Linux内核中添加CAN驱动设备,还要实现Android HAL层的调用。以S5PV 210微处理器与CAN总线控制器MCP2515为例,分析了Android设备驱动原理,以及Android下CAN设备驱动程序的开发流程和方法,设计了相关的重要数据结构和代码,实现了CAN总线的驱动程序开发。 Android是指“机器人”,由Google公司于2007年11月5日发布的基于Linux平台的开源手机操作系统,是首个为移动终端打造的真正开放和完整的移动软件。Android是一个开放平台,在嵌入式移动设备领域里具有良好的应用前景,但在不同的设备上往往有不同的硬件支持,
[单片机]
友善之臂Mini2440之嵌入式Linux下应用程序对Nand Flash的读写操作
接上篇继续分析Nand Flash驱动:Nand Flash的设备探测函数s3c24xx_nand_probe的动作。 s3c24xx_nand_probe函数首先创建代表MTD原始设备的数据结构体struct mtd_info *mtd,并将其初始化,源代码如下所示: /* s3c24xx_nand_probe * called by device layer when it finds a device matching one our driver can handled. This code checks to see if * it can allocate all necessary resources t
[单片机]
51单片机LED管显示子程序实例
;DISP显示子程序 PORT_A EQU 0CF01H PORT_B EQU 0CF02H PORT_C EQU 0CF03H ;功能:将显示缓冲区39-3FH内容显示一遍 ;3FH对应八个LED管 ;3E-39H自左到右对应数码 ;占用:PSW,ACC,DPTR,R0,R3,R6,R7 内 ; ORG 0DE00H DISP1: MOV R0,#3FH DISP_0: MOV R3,#01000000B ;位选字 MOV A,@R0 ;取显示数据 SJMP DISP_2 DISP_1: MOV DPTR,#LED_TB MOV A,@R0 MOVC A,@A
[单片机]
采用MSP430地址位多机协议通讯程序
/* 采用MSP430地址位多机协议通讯程序 微控论坛原创作品 作者:tianxy 各位同仁,响应版主号召,现就 爱好者 同志提出的 关于UART的地址位多机通讯 做出本人的见解.希望大家多多指点. 在 430串口发送格式中,我们可以看到.一个字节由1个起始位+7位或8位数据位+校验位+1位或2位停止组成.如果要使用 430的地址位多机协议.主要是将UxCTL寄存器中的MM位置1,同时将UxRCTL寄存器中的URXWIE置1. 例程如下: 上位机先用Mark校验方式.格式为:1个起始位+8位数据位+1位校验位+1位停止位. 发送5个字节:0x02(地址号) 0x05(命令字节) 0x00(预留字节) 0x07(累加和校验低字节)
[单片机]
中断服务子程序是如何被执行的
前言 笔者在 《程序是如何在 CPU 中运行的(二)》中从 PC 指针寄存器的角度分析了一级函数调用和二级函数调用执行的过程,那么中断服务子程序又是如何被执行的呢?两者的相同点和不同点是什么呢?该篇文章笔者将详细地阐述这个概念。 中断的概念 当 CPU 正在处理某件事情的时候,外部发生的某一事件请求 CPU 迅速去处理,于是,CPU 暂时中止当前的工作,转去处理所发生的事件。中断服务处理完该事件以后,再回到原来被中止的地方,继续原来的工作,这样的过程称之为中断,示意图如下: 中断响应及处理过程 回顾函数调用的过程,子程序由主程序进行调用,从而完成执行。但是中断服务子程序并没有被主程序进行调用,中断服务子程序的执行是通过中断
[单片机]