应广单片机 PMS150G、FPC161 基础例子【GPIO设置】

调试方式:仿真器5S-I-S02B
编译软件:FPPA IDE
编译语言:mini C
电脑系统:win10

软件功能:设置GPIO脚 不同输入输出状态

直接上代码

//==========================================//
//					IO设置
//案例为:
//设置了IO脚的不同输入输出状态
//比如PA.0为输出低,PA.3为输出高,PA.4位输入上拉
//==========================================//
#include	"extern.h"

//================IO设置============================
void	IO_init(void)
{
	//注:无PA.1,PA.2脚位
	//未使用端口需有防漏电设置,如加内部上拉
	PAPH	=	0b1111_0110;	//上拉控制寄存器,控制上拉高相应的引脚(1:启用,0:停用
	PAPL	=	0b0000_0000;	//下拉控制寄存器,控制下拉高相应的引脚(1:启用,0:停用)
	PAC		=	0b0000_1001;	//数据控制寄存器(1:输出模式,0:输入模式)
	PA		=	0b0000_0001;	//数据寄存器
	.delay 10000;
	//单个IO设置
	$ PA.0 out,high;	//PA0输出高
	$ PA.3 out,low;		//PA3输出低
	$ PA.4 in,pull;		//PA4输入上拉
}

void	FPPA0 (void)
{
	.ADJUST_IC	SYSCLK=IHRC/16, IHRC=16MHz, VDD=3.3V;
     IO_init();
	while (1)
	{
		nop;
	}
}


void	Interrupt (void)
{
	pushaf;

	if (Intrq.T16)
	{	//	T16 Trig
		//	User can add code
		Intrq.T16	=	0;
		//...
	}

	popaf;
}


代码简解
第一部分:IO_init 函数初始化 gpio端口
第二部分:设置对应的gpio电平状态
在这里插入图片描述
这是示波器检测PA0的电平信号。
在这里插入图片描述
参考MiniC编程助手

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐