CHDK_DE Vorschauversion  Trunk Rev. 6014
 Alle Datenstrukturen Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Makrodefinitionen
lib.c-Dateireferenz
#include "platform.h"
+ Include-Abhängigkeitsdiagramm für lib.c:

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define LED_PR   0xC02200C4
 
#define LED_BASE   0xC02200C0
 

Funktionen

void shutdown ()
 
void debug_led (int state)
 
int get_flash_params_count (void)
 
void camera_set_led (int led, int state, __attribute__((unused)) int bright)
 

Makro-Dokumentation

#define LED_BASE   0xC02200C0

Definiert in Zeile 42 der Datei lib.c.

#define LED_PR   0xC02200C4

Definiert in Zeile 26 der Datei lib.c.

Dokumentation der Funktionen

void camera_set_led ( int  led,
int  state,
__attribute__((unused)) int  bright 
)

Definiert in Zeile 44 der Datei lib.c.

45 {
46  int leds[] = {12,16,4,8,4,0,4};
47  if(led < 4 || led > 10 || led == 6) return;
48  volatile long *p=(void*)LED_BASE + leds[led-4];
49  if (state)
50  p[0]=0x46;
51  else
52  p[0]=0x44;
53 }
void debug_led ( int  state)

Definiert in Zeile 28 der Datei lib.c.

29 {
30  volatile long *p=(void*)LED_PR;
31  if (state)
32  p[0]=0x46;
33  else
34  p[0]=0x44;
35 }
int get_flash_params_count ( void  )

Definiert in Zeile 38 der Datei lib.c.

38  {
39  return 110;
40 }
void shutdown ( )

Definiert in Zeile 10 der Datei lib.c.

11 {
12  volatile long *p = (void*)0xc02200a0;
13 
14  asm(
15  "MRS R1, CPSR\n"
16  "AND R0, R1, #0x80\n"
17  "ORR R1, R1, #0x80\n"
18  "MSR CPSR_cf, R1\n"
19  :::"r1","r0");
20 
21  *p = 0x44;
22 
23  while(1);
24 }