当前位置:网站首页>Improve lighting C program
Improve lighting C program
2022-07-05 07:52:00 【Soy sauce;】
explain : The watchdog timer will reset the whole system automatically , Used to update bug, Systematic self-protection mechanism

** explain :
commonly CON Is the control input and output
DAT Control the specific register control pin
So just find the corresponding one
Development manuals are important , To be able to search
Cycle lighting procedure
The method of zeroing and setting one can be the same as before to set the desired bit or and
But it's too long to write , This kind of shift is generally used
void delay(volatile int d)
{
while (d--);
}
int main(void)
{
volatile unsigned int *pGPFCON = (volatile unsigned int *)0x56000050;
// Join in volatile The system will handle it properly , Will not automatically optimize
volatile unsigned int *pGPFDAT = (volatile unsigned int *)0x56000054;
int val = 0; /* val: 0b000, 0b111 */
int tmp;
/* Set up GPFCON Give Way GPF4/5/6 Configured as output pin */
*pGPFCON &= ~((3<<8) | (3<<10) | (3<<12));
// Zero clearing
*pGPFCON |= ((1<<8) | (1<<10) | (1<<12));
// Configuration register
/* Cycle on */
while (1)
{
tmp = ~val;
tmp &= 7;
*pGPFDAT &= ~(7<<4);
*pGPFDAT |= (tmp<<4);
delay(100000);
val++;
if (val == 8)
val =0;
}
return 0;
}
In addition, the latter uses to define registers as macros , The effect is the same, don't write
Key led Program
#include "s3c2440_soc.h"
// Write the function definition here , You don't have to configure registers all the time
void delay(volatile int d)
{
while (d--);
}
int main(void)
{
int val1, val2;
/* Set up GPFCON Give Way GPF4/5/6 Configured as output pin */
GPFCON &= ~((3<<8) | (3<<10) | (3<<12));
GPFCON |= ((1<<8) | (1<<10) | (1<<12));
// Reset first and then set one
/* To configure 3 Key pins are input pins : * GPF0(S2),GPF2(S3),GPG3(S4) */
GPFCON &= ~((3<<0) | (3<<4)); /* gpf0,2 */
GPGCON &= ~((3<<6)); /* gpg3 */
// Directly clear all
/* Cycle on */
while (1)
{
val1 = GPFDAT;
val2 = GPGDAT;
if (val1 & (1<<0)) /* s2 --> gpf6 */
{
/* Release */
GPFDAT |= (1<<6);
}
else
{
/* Press down */
GPFDAT &= ~(1<<6);
}
if (val1 & (1<<2)) /* s3 --> gpf5 */
{
/* Release */
GPFDAT |= (1<<5);
}
else
{
/* Press down */
GPFDAT &= ~(1<<5);
}
if (val2 & (1<<3)) /* s4 --> gpf4 */
{
/* Release */
GPFDAT |= (1<<4);
}
else
{
/* Press down */
GPFDAT &= ~(1<<4);
}
}
return 0;
}
边栏推荐
- Let me teach you how to develop a graphic editor
- msys2
- 软件设计师:03-数据库系统
- solver. Learning notes of prototxt file parameters
- Build your own random wallpaper API for free
- RF ride side door processing of prompt box
- Numpy——1. Creation of array
- [professional literacy] specific direction of analog integrated circuits
- cygwin
- Extended application of single chip microcomputer-06 independent key
猜你喜欢

Can't find real-time chat software? Recommend to you what e-commerce enterprises are using!

Embedded AI intelligent technology liquid particle counter

Altium designer 19.1.18 - Import frame

Opendrive ramp

High end electronic chips help upgrade traditional oil particle monitoring

Cadence simulation encountered "input.scs": can not open input file change path problem

MySQL blind note common functions
![[untitled] record the visual shock of the Winter Olympics and the introduction of the display screen](/img/43/7f8becc09c5ce7fe401bed140608f3.jpg)
[untitled] record the visual shock of the Winter Olympics and the introduction of the display screen

MySql——存储引擎

A simple method to prove 1/t Fourier transform
随机推荐
[idea] common shortcut keys
How to migrate the device data accessed by the RTSP of the easycvr platform to easynvr?
P3D gauge size problem
Mlperf training v2.0 list released, with the same GPU configuration, the performance of Baidu PaddlePaddle ranks first in the world
Global and Chinese markets for waste treatment air switches 2022-2028: Research Report on technology, participants, trends, market size and share
Markdown tips
About the problem that MySQL connector net cannot be cleared in MySQL
Batch modify the txt file code to UTF-8 (notepad++)
How to excavate and research ideas from the paper
Butterfly theme beautification - Page frosted glass effect
Global and Chinese market for blood typing 2022-2028: Research Report on technology, participants, trends, market size and share
如何将EasyCVR平台RTSP接入的设备数据迁移到EasyNVR中?
IC software learning
L'étude a révélé que le système de service à la clientèle du commerce électronique transfrontalier a ces cinq fonctions!
Function and usage of function pointer
cygwin
High end electronic chips help upgrade traditional oil particle monitoring
[popular science] some interesting things that I don't know whether they are useful or not
The research found that the cross-border e-commerce customer service system has these five functions!
mysql 盲注常见函数