⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simpleplc.c

📁 AVR典型实例.rar
💻 C
字号:
/*
    简易PLC项目
	文件名:SimplePLC.C
    编写人员:吴健
	PA,PB:输入节点
	PC,PD:输出节点 
    一共16个输入触点,16个输出触点,16个中间触点
    支持的指令包括:取触点、与触点、并触点、分支电路、合并电路
*/


#include "SimplePLC.h"


// 主程序
int main(void)
{
	DDRA = 0;
	DDRB = 0;
	DDRC = 0xff;
	DDRD = 0xff;
	// 定时器初始化设置
	TCCR0 = 0x05;  // 1024分频
	TIMSK = 0x01;
	TCNT0 = 256 - 0.01/(1024.0/F_CPU);
	INIT();  // 初始化系统变量
    INIT_TIMER(); // 初始化所有系统定时器
	sei();
    for(;;)
	{
	    BEG();
        // 用户PLC代码开始

		ST(I(0));
		OR(O(0));
		NAND(A(2));
		OUT(O(0));

		ST(O(0));
		NAND(A(0));
		NAND(O(1));
		TCMP(0,0,0,8,0,O(15),O(14),A(1));

		ST(A(1));
		OR(O(1));
		NAND(I(1));
		OUT(O(1));

		ST(I(1));
		OR(A(0));
		NAND(A(2));
		OUT(A(0));
		TCMP(1,0,0,8,0,O(13),O(12),A(2));

		ST(A(1));
		OUT(O(3));
		ST(A(2));
		OUT(O(4));

		ST(A(0));
        OUT(O(5));

		// 用户PLC代码结束
		END();

	}
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -