跳cortex-m0——思想转变》之后又一入门级文章,在此不敢请老鸟们过目。不过要是老鸟们低头瞅了一眼,发现错误,还请教育之,那更是感激不尽。
与Cortex在某些操作方式上的异同,让自己对Cortex有了更深一步的了解,所以在此分享,以期对我们这些“51菜”在学习Cortex上有所帮助,文中有不对之处,还请大虾们指正。

正文

与新唐操作方式
)、在51上,我们向外写数据主要是通过P0,P1,P2,P3口,且在每个端口上分别有8个引脚。(在这里我们用端口代表P1等,用引脚代表P1^0等);而新唐上,我们主要通过PA,PB,PC向外发送数据,且在每个端口上有16个引脚。这些引脚即可以按字节/双字输出,也可以按位输出。(2的四个并行口都是双向的,其中,P0口为漏极开路驱动,P1,P2,P3口有内部上拉电阻驱动,是准双向口。而Cortex上引脚上是有个弱上拉电阻的,且其I/O类型可由软件独立地配置(即用户通过设置相应的寄存器来选择引脚是  输入、输出、开漏还是准双向)。我们在使用51是,当需要用到漏极开路模式(即不输出电压,低电平时接地,高电平时不接地。如果外接上拉电阻,则在输出高电平时电压会拉到上拉电阻的电源电压。这种方式适合在连接的外设电压比单片机电压低的时候)时,就将器件接到P0口,用到准双向模式(用做输入时被拉高,低则要靠外部电路拉低)时,器件接P1,P2,P3一样,许多I/0口都具有第二,第三功能,但是二者的控制方式有很大不同。我们在使用51时,虽然也面对引脚的第二功能,但是我们在使用第二功能时,并不需要过多的设置,只需在某个时刻的输出数据,我们编程人员自己知道他是数据还是地址即可,相应的操作我们可以在对应的时刻通过其他引脚控制片选来实现数据的流向。但是由于在新唐中,一个引脚的功能可能有多种,且未必只是地址/数据这样简单,还有一些是外部功能引脚,所以,我们在使用相应的引脚功能时,还要设置相应的寄存器。比如:我们要是用PA.15来输出PWM信号,只要向寄存器GPA_MFP中的第15位写入1,寄存器PA15_I2SMCLK中写入0即可使PA.15输出PWM信号。寄存器如下图:

从51跳cortex-m0学习2——程序详解的更多相关文章

  1. [转]iOS学习之UINavigationController详解与使用(二)页面切换和segmentedController

    转载地址:http://blog.csdn.net/totogo2010/article/details/7682433 iOS学习之UINavigationController详解与使用(一)添加U ...

  2. iOS学习之UINavigationController详解与使用(二)页面切换和segmentedController

    iOS学习之UINavigationController详解与使用(一)添加UIBarButtonItem是上篇,我们接着讲UINavigationController的重要作用,页面的管理和切换. ...

  3. iOS学习之UINavigationController详解与使用(一)添加UIBarButtonItem

    http://blog.csdn.net/totogo2010/article/details/7681879 1.UINavigationController导航控制器如何使用 UINavigati ...

  4. [转]iOS学习之UINavigationController详解与使用(三)ToolBar

    转载地址:http://blog.csdn.net/totogo2010/article/details/7682641 iOS学习之UINavigationController详解与使用(二)页面切 ...

  5. Linux开机启动程序详解

    Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...

  6. Linux开机启动程序详解[转]

    Linux开机启动程序详解 我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤 ...

  7. linux系统设置服务开机启动3种方法,Linux开机启动程序详解

    linux系统设置服务开机启动 方法1:.利用ntsysv伪图形进行设置,利用root登陆 终端命令下输入ntsysv 回车:如下图     方法2:利用命令行chkconfig命令进行设置 简要说明 ...

  8. 跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码

    跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码 第一步:插入QQ摄像头,安装好驱动(有的可能免驱动) 第二步:打开HDevelop,点击助手-打开新的Image Acquisitio ...

  9. Linux如何实现开机启动程序详解(转)

    Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...

随机推荐

  1. sql获取表字段名、描述和类型

    SELECT TableName = OBJECT_NAME(c.object_id), ColumnsName = c.name, Description = ex.value, ColumnTyp ...

  2. C++_知识点_全局变量

    全局变量 -全局变量即在函数之外定义的变量 -全局变量保存在静态存储区 注意: -全局变量只能声明和初始化 -全局变量不能进行运算.赋值(非初始化).调用函数 -否则会出现编译错误 -error: e ...

  3. wp8.1开发系列之安装包URI方案

    应用文件使用"ms-appdata:///"开头的URI地址,安装包使用的是"ms-appx:///"开头的URI地址. 比如:读取安装包Image文件夹下的t ...

  4. php study plan personal

    Php study schedule personal: 1. php intro + upper : imooc2. video course: php100, houdunwang (togeth ...

  5. POJ 2110 Mountain Walking 二分+bfs

    传送门 昨天看到这个题还以为是个脑残的dp, 然而脑残的是我. 题目意思就是从左上角走到右下角, 设x为路径上的最大值-最小值, 求x的最小值. 二分x, 对于每一个x, 枚举下界lower, low ...

  6. 【转】Centos 设置IP地址的几种方式

    对于很多刚刚接触linux的朋友来说,如何设置linux系统的IP地址,作为第一步,下面小编以centos系统为例,给大家演示如何给centos设置IP地址,如何修改linux 系统IP地址? 查看I ...

  7. Open开发平台,认证,授权,计费

    1.申请appid和appkeyhttp://wiki.connect.qq.com/%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C_oauth2-0 appid:应用的唯一 ...

  8. 一步一步Asp.Net MVC系列_权限管理总结(附MVC权限管理系统源码)

    在上一节中我们总结了关于权限控制的方式,我们这一节讲解关于权限控制中角色权限的授予处理等等并做本系列的总结. 首先,我们来谈谈权限控制中角色权限的控制,上一节只是针对权限拦截中比较粗的控制,如果我们需 ...

  9. OSG选中效果展示

    <OpenSceneGraph三维渲染引擎编程指南>书中选中高亮效果示例.osgFX特效 2.得到鼠标的位置 osgFX特效1.高亮,在开头的时候写了: 2.线框: #include< ...

  10. android 中获取网络状态、判断3G、2G、wifi网络、判断wifi是否打开、获取本机地址、获取本机串号IMEI整理

    代码如下:package com.android.xym; import java.io.IOException; import java.net.HttpURLConnection; import ...