📄 op50nled.c
字号:
/* op50nled.c -- fucntions that manipulate the LEDs. * * Copyright (c) 1995 Cygnus Support * * The authors hereby grant permission to use, copy, modify, distribute, * and license this software and its documentation for any purpose, provided * that existing copyright notices are retained in all copies and that this * notice is included verbatim in any distributions. No written agreement, * license, or royalty fee is required for any of the authorized uses. * Modifications to this software may be copyrighted by their authors * and need not follow the licensing terms described here, provided that * the new terms are clearly indicated on the first page of each file where * they apply. */#include "op50n.h"void zylons();void strobe();void led_putnum();void delay();/* * led_putnum -- print a hex number on the LED. the value of num must be a byte. * The max number 15, since the front panel only has 4 LEDs. */voidled_putnum ( num )char num;{ static unsigned char *leds = (unsigned char *)LED_ADDR; /** *leds = (num << 4); **/ *leds = num;}/* * strobe -- do a zylons thing, toggling each led in sequence forever... */voidzylons(){ while (1) { strobe(); }}/* * strobe -- toggle each led in sequence up and back once. */voidstrobe(){ static unsigned char curled; static unsigned char dir; curled = 1; dir = 0; while (curled != 0) { led_putnum (curled); delay (70000); if (dir) curled >>= 1; else curled <<= 1; if (curled == 0x100) { dir = ~dir; } } curled = 1; dir = 0;}voiddelay (x) int x;{ int y = 17; while (x-- !=0) y = y^2;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -