当前位置: 首页 > news >正文

电子商务网站建设域名微信小程序源码免费下载

电子商务网站建设域名,微信小程序源码免费下载,官网网站源码,小程序app定制原理介绍 原理介绍详见: 【STM32】江科大STM32学习笔记汇总(已完结)_stm32江科大笔记-CSDN博客https://blog.csdn.net/u010249597/article/details/134762513 项目准备 1.在项目文件夹中新建3-1 LED文件夹 2.keil新建项目,打开新建的3-1 LED&#xf…

原理介绍

原理介绍详见:

【STM32】江科大STM32学习笔记汇总(已完结)_stm32江科大笔记-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/u010249597/article/details/134762513


项目准备

1.在项目文件夹中新建3-1 LED文件夹

2.keil新建项目,打开新建的3-1 LED,命名为project

4.工程芯片选择STM32F103C8,因为课程中的芯片是STM32F10318C8T6

5.新建start,library,User文件夹

6.按照下面给出的网址将三个文件夹各自所需的文件加入对应的文件夹中

小白跟做江科大32单片机之新建工程-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_58051657/article/details/139169087

注意

在User文件夹中要么自己新建一个main.c要么将江科大老师给的main.c文件复制到User文件夹中

7.添加完成之后,点击那个三个小正方体,新建三个组——start,library,User,在start组下添加下图的文件

8.将外部Library文件夹汇中所有文件都添加到软件中新建的Library组中

9.将外部User文件夹汇中所有文件都添加到软件中新建的User组中

10.添加外部文件对应路径

11.添加USE_STDPERIPH_DRIVER定义

12.配置debug

    13.debug中setting选择

14.编译测试,要保证0错误,0报错

提示

可以在江科大老师分享的第二个文件夹中找到keilkill.bat文件,删除中间文件,减小项目占用的空间


具体实现

1.按照江科大老师给的连接示意图连接LED

操作GPIO需要提前准备三步:

        ①.用RCC开启GPIO时钟

        ②.GPIO_Init初始化GPIO

        ③.使用输出或输入函数控制GPIO口

2.编写代码

由上图可知,要点亮需要选择0A这个端口点亮LED

所以,在main中编写

#include "stm32f10x.h"                  // Device header

int main()
{
    /*操作GPIO的三步*/

  //1.开启RCC时钟,RCC_APB2Periph_GPIOA表示要点亮OA的LED
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);    //开启GPIOA的时钟
                                                            //使用各个外设前必须开启时钟,否则对外设的操作无效
    
   //2.引用结构体,初始化GPIO
    GPIO_InitTypeDef GPIO_InitStructure;                    //定义结构体变量
    
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;        //GPIO模式,赋值为推挽输出模式
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;                //GPIO外设P0引脚,赋值为第0号引脚
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //GPIO速度,默认赋值为50MHz
    GPIO_Init(GPIOA, &GPIO_InitStructure);                    //将赋值后的构体变量传递给GPIO_Init函数

   GPIO_ResetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为低电平,LED亮
    GPIO_SetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为高电平,LED灭
  while(1)
 { 
   
 }
}

但上面这些代码只能实现一瞬间LED的亮灭,或在上电后LED始终保持灭或始终保持亮

改进:

3.引入Delay函数

①新建system文件夹,把江科大老师提供的Delay相关文件添加到system文件夹中

②按照项目准备中的步骤,将system文件夹的内容加入到3-1 LED项目中

4.引入Delay函数

#include "stm32f10x.h"                  // Device header

#include "Delay.h"

int main()
{
    /*操作GPIO的三步*/

  //1.开启RCC时钟,RCC_APB2Periph_GPIOA表示要点亮OA的LED
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);    //开启GPIOA的时钟
                                                            //使用各个外设前必须开启时钟,否则对外设的操作无效
    
   //2.引用结构体,初始化GPIO
    GPIO_InitTypeDef GPIO_InitStructure;                    //定义结构体变量
    
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;        //GPIO模式,赋值为推挽输出模式
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;                //GPIO外设P0引脚,赋值为第0号引脚
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;        //GPIO速度,默认赋值为50MHz
    GPIO_Init(GPIOA, &GPIO_InitStructure);                    //将赋值后的构体变量传递给GPIO_Init函数

   GPIO_ResetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为低电平,LED亮
    GPIO_SetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为高电平,LED灭
  while(1)
 { 
   /*通过设置PA0引脚的高低电平,实现LED闪烁,有下面3种方法*/
         /*最终我选用方法3点亮LED*/
        /*方法1:GPIO_ResetBits设置低电平,GPIO_SetBits设置高电平*/
         /*GPIO_ResetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为低电平
        Delay_ms(500);                                        //延时500ms
        GPIO_SetBits(GPIOA, GPIO_Pin_0);                    //将PA0引脚设置为高电平
        Delay_ms(500);                                        //延时500ms*/
        
        /*方法2:GPIO_WriteBit设置低/高电平,由Bit_RESET/Bit_SET指定*/
        /* GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_RESET);        //将PA0引脚设置为低电平
        Delay_ms(500);                                        //延时500ms
        GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_SET);            //将PA0引脚设置为高电平
        Delay_ms(500);                                        //延时500ms*/
        
        /*方法3:GPIO_WriteBit设置低/高电平,由数据0/1指定,数据需要强转为BitAction类型*/
        GPIO_WriteBit(GPIOA, GPIO_Pin_0, (BitAction)0);        //将PA0引脚设置为低电平
        Delay_ms(500);                                        //延时500ms
        GPIO_WriteBit(GPIOA, GPIO_Pin_0, (BitAction)1);        //将PA0引脚设置为高电平
        Delay_ms(500);                                        //延时500ms
 }
}

5.最终效果

http://www.yayakq.cn/news/586510/

相关文章:

  • 深圳网站设计推广嘉兴模板建站系统
  • 网站安全建设需求贵阳微网站
  • 广州网站建设流程图松江网站设计
  • 织梦网站挂马教程没有货源在哪可以免费开网店
  • 网站一般怎么推广黑彩网站自己可以做么
  • 网站后台模板htmlapp生成器手机版
  • 柳州网站建设工作室设计素描
  • 中国建设教育协会报名网站犀牛云做网站骗人
  • 用hexo做网站网站图片如何做链接
  • 福建手机版建站系统开发kompozer wordpress
  • 银川哪里做网站制作网站要找什么公司
  • 上海网站策划外贸平台哪个网站最好知乎
  • 顺义区做网站的公司做电影免费ppt模板下载网站
  • 建站宝盒后台移动app开发外包公司
  • 建立网站设计住房城乡与建设厅网站首页
  • 自己如何建企业网站网站托管 建设方案
  • 物流网站建设规划总结门头沟富阳网站建设
  • 做商铺的网站有那些企业网站优化方案的策划
  • 网站如何做reference找大学生做网站
  • 出台网站集约化建设通知棋牌游戏网站开发
  • 长春建设银行网站同城app模板
  • 网站的内容做证据观点建立一个简单的企业官网
  • 谁家做网站比较好做解密类网站可行
  • 学校网站建设方案图片wordpress 怎么去掉index.php
  • 红花岗区建设局网站html5手机网站免费模板
  • 专门做定制的网站网站开发 瀑布结构
  • 太原微网站建设成品网站短视频源码搭建免费
  • 湘乡网站建设网络营销理论与实务
  • 怎么样提升网站权重公众号模板制作精美
  • 网站二次开发是什么wordpress速度好慢