STM32F0 驱动GPIO口输出

发布者:梦中的额吉最新更新时间:2016-10-07 来源: eefocus关键字:STM32F0  驱动  GPIO口输出 手机看文章 扫描二维码
随时随地手机看文章
之前老是不能点亮LED,连仿真器才发现,在未开户GPIO时钟使用的情况下,是无法配置GPIO寄存器的。
测试代码如下:
 
 

 

#include "stm32f0xx.h"
#include "main.h"
 
void SystemInit(void){}
 
long RCC_Tmp[10];
long GPIO_Tmp[10];
 
void SysInit(void)
{
///////////  配置RCC  /////////////////////////////
RCC_Tmp[0]  =  RCC->CR;
RCC->CR |= 1<<18; //外部高速时钟旁路
RCC_Tmp[1] = RCC->CR;
 
RCC_Tmp[2] = RCC->AHBENR;
RCC->AHBENR |= 1<<19; //使能PORTC的时钟
RCC_Tmp[3] = RCC->AHBENR;
 
// RCC_Tmp[4] = RCC->AHBRSTR;
// //RCC->AHBRSTR |= 1<<19 ;//复位PORTC
// RCC_Tmp[5] = RCC->AHBRSTR;
 
RCC_Tmp[6] = RCC->CR2;
RCC->CR2 |= 1<<0; // HSI14震荡器关闭
RCC_Tmp[7] = RCC->CR2;
///////////////////////////////////////////////////
/////////////// 配置GPIOC //////////////////////////////
GPIO_Tmp[0] = GPIOC->MODER;
GPIOC->MODER |= 0x05 <<16;   //配置PC8\PC9为通用输出
GPIO_Tmp[1] = GPIOC->MODER;
 
GPIO_Tmp[2] = GPIOC->ODR; 
GPIOC->ODR |= 0x01<<8; //PC8\PC9输出1
GPIO_Tmp[3] = GPIOC->ODR; 
 
GPIO_Tmp[4] = GPIOC->OSPEEDR; 
GPIOC->OSPEEDR |= 0x3<<16; //PC8配置为高速口
GPIO_Tmp[5] = GPIOC->OSPEEDR; 
  //////////////////////////////////////////////////////////
}
 
int main(void)
{
SysInit();
while (1)
{
GPIOC->ODR  |= 0x01 <<9;
GPIOC->ODR &=~0X01<<9;
 
    }
 
}
 

 

 

 

待解决的问题:
1、在配置RCC_AHBRSRT寄存器时,复位操作GPIOC,以后面的代码中也无法配置GPIO寄存器。
2、如何在仿真时直接查看寄存器中的值,而不是通过在程序中将寄存器的值对变量赋值查看。
 
另:
在用KEIL复制代码到网页中出现乱码时,可按下图设置一下KEIL即可解决。
STM32F0 驱动GPIO口输出 - 周勇 - 周勇的博客
 
STM32F0 驱动GPIO口输出 - 周勇 - 周勇的博客
 
STM32F0 驱动GPIO口输出 - 周勇 - 周勇的博客

关键字:STM32F0  驱动  GPIO口输出 引用地址:STM32F0 驱动GPIO口输出

上一篇:关于stm32启动文件的选择
下一篇:STM32F051 写外部中断步骤

推荐阅读最新更新时间:2024-03-16 15:13

Diodes高性价比可调光LED驱动器改善Triac调光器兼容性
Diodes公司 (Diodes Incorporated) 新推出的LED驱动器AL1696适合多种Triac可调光照明应用,特别是改型灯。新产品集成了MOSFET,省去辅助绕组,可减少外围物料成本及元件数量。AL1696有三种MOSFET电压/电流额定值型号,赋予设计灵活性,可满足家居照明的生产要求。 AL1696可用于降压或升降压拓朴结构,采用临界导通模式,实现恒流转换及高功率因数。它还能降低开关噪声,从而简化电磁干扰/电磁兼容性测试和认证流程。这种设计只需单绕组电感器,可达到 3%的电流检测精度。该器件具有120 A的低工作电流及150 A的启动电流,能与多种前沿触发 (Leading-edge) 和後沿触发 (Tr
[电源管理]
四相五线减速比为1/64步进电机驱动设计
一、大致介绍: 步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。    图1 常见的几种步进电机      图2 步进电机和ULN2003合用 二、常用术语 1、相数:产生不同对极N、S磁场的激磁线圈对数。常用m表示。 2、拍数:完成一个磁
[单片机]
四相五线减速比为1/64步进电机<font color='red'>驱动</font>设计
无刷直流电机的三相六臂全桥驱动电路讲解
无刷直流电机在运行时,永磁矩力推动电路中有± 自旋转距,经电路中断后转台旋回,再次上电时产生新的自旋转距,从而形成转子旋转,实现电机运动。该原理以及旋转机构的小体积,使其应用于工业领域极为广泛。其优势在于体积小,功率输出高,功耗低,抗干扰能力强,调速范围大,可靠性高。 在极限转速、经验调速中,输出力矩和功率可得到改进,能较快达到其最终转速,几乎没有延时,因此该电机拥有很好的运行特性。但是在定子I-t特性的变化性上,其精度大大降低,使得较难对其进行定量调速,而空载时,I-t特性也不完善,无法保证精度。 无刷直流电机其基本的原理如下图所示,无刷直流电机的转子是永磁体,通过改变定子上的线圈的电流方向所产生的磁场使转子旋转。通过控
[嵌入式]
无刷直流电机的三相六臂全桥<font color='red'>驱动</font>电路讲解
大功率区域照明LED驱动电源方案
   1 前言   在各种能源消耗中,据统计在照明领域电能的消耗占总电能消耗20%,因此提高照明的能源使用效率、降低其能源消耗具有十分重要的意义。采用高能效的LED 照明正在成为目前主要的发展方向。   从目前的照明领域现状来看,应用于大功率区域照明的现有光源(如金属卤素灯、高压钠灯、线性荧光灯及紧凑型荧光灯)存在着不少局限,如高压钠灯的显色性差,金属卤素灯的典型灯具损耗较高(40%)且其从启动到发光至完整亮度经历的时间可能长达10 分钟,线性荧光灯的冷温度性能差,紧凑型荧光灯的启动速度也较慢。   LED 具有传统光源不具备的优势,例如发出每流明光所消耗的电能更少、方向控制性更好、色彩质量更佳、环保,并且其开启和关闭能够更方便
[电源管理]
大功率区域照明LED<font color='red'>驱动</font>电源方案
基于S3C2440的嵌入式Linux驱动——MMC/SD子系统解读(一)
本文的内容基于如下硬件和软件平台: 目标平台:TQ2440 CPU:s3c2440 内核版本:3.12.5 基于SD规范4.10,即《SD Specifications Part 1 Physical Layer Simplified Specification Version 4.10》。 一、MMC子系统构架 待写。。。 二、主要数据结构 待写。。。 三、MMC子系统初始化 首先看看子系统是如何初始化的,完成哪些工作。 代码位于linux/drivers/mmc/core/core.c。 static int __init mmc_init(void) { int ret; /*
[单片机]
基于S3C2440的嵌入式Linux<font color='red'>驱动</font>——MMC/SD子系统解读(一)
美国国家半导体推出业内调光效果最佳的LED驱动
美国国家半导体公司(National Semiconductor Corporation)(美国纽约证券交易所上市代码:NSM)宣布推出一款全新LED驱动器,其相位调光效果优于市场上同类产品。这款适用于高亮度LED照明系统的LM3450 LED 驱动器内置主动式功率因素修正器(PFC)和相位调光译码器,确保可在极宽的可编程调光范围内灯光的明暗变化稳定,不会出现闪烁情况。作为美国国家半导体PowerWise® 高能源效率芯片系列的一员,LM3450尤其适用于具备相位调光功能的10W至100W高性能LED照明系统。 采用相位调光器的住宅和商用照明系统必须配备可将相位斩波波形正确解码的电路,以便调光器能稳定调控LED
[电源管理]
美国国家半导体推出业内调光效果最佳的LED<font color='red'>驱动</font>器
74HC595驱动8段数码管的程序
//使用STM32F103作为MCU,74HC595驱动8段数码管的程序 #define HC595_OE_H() GPIO_SetBits(GPIOB, GPIO_Pin_12) #define HC595_OE_L() GPIO_ResetBits(GPIOB, GPIO_Pin_12) #define HC595_RCK_H() GPIO_SetBits(GPIOB, GPIO_Pin_13) #define HC595_RCK_L() GPIO_ResetBits(GPIOB, GPIO_Pin_13) #define HC595_SCK_H() GPIO_SetBits(GPIOB, GPIO_Pin_14) #de
[单片机]
采用8位单片机驱动PCI总线网卡的设计方案
目前,以太网(Ethernet)协议已经非常广泛地应用于各种计算机网络,如办公局域网、工业控制网络、因特网等场合,并且还不断地在发展。单片机或微控制器(MCU)(也称为嵌入式系统)已经在各个领域得到了广泛的应用。目前绝大多数系统都是以MCU为核心,与监测、伺服、指示设备配合实现一定的功能。如果嵌入式系统能够连接到Internet,则可以方便、低廉地将信息传送到世界上的任何一个地方。因此单片机如何控制以太网网卡进行传输数据,如何加载TCP/IP协议连接到互联网,这些都是一些具有挑战性的问题[1,2]。 单片机上网研究最多的一个方案就是用单片机驱动ISA总线网卡或者是驱动基于ISA总线的以太网控制芯片。但是,近年来,随着ISA总线在台
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved