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   0xc02200e4
 
#define LED_AF   0xc02200ec
 
#define LED_BASE   0xc02200dc
 

Funktionen

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

Makro-Dokumentation

#define LED_AF   0xc02200ec

Definiert in Zeile 30 der Datei lib.c.

#define LED_BASE   0xc02200dc

Definiert in Zeile 31 der Datei lib.c.

#define LED_PR   0xc02200e4

Definiert in Zeile 20 der Datei lib.c.

Dokumentation der Funktionen

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

Definiert in Zeile 33 der Datei lib.c.

35 {
36  int leds[] = {12,16,4,8,4,0,4};
37  if(led < 4 || led > 10 || led == 6) return;
38  volatile long *p=(void*)LED_BASE+ leds[led-4];
39  if (state)
40  p[0]=0x46;
41  else
42  p[0]=0x44;
43 }
void debug_led ( int  state)

Definiert in Zeile 22 der Datei lib.c.

23 {
24  volatile long *p=(void*)LED_PR;
25  if (state)
26  p[0]=0x46;
27  else
28  p[0]=0x44;
29 }
int get_flash_params_count ( void  )

Definiert in Zeile 46 der Datei lib.c.

46  {
47  return 83;
48 }
void shutdown ( )

Definiert in Zeile 3 der Datei lib.c.

4 {
5  volatile long *p = (void*)0xc02200a0;
6 
7  asm(
8  "MRS R1, CPSR\n"
9  "AND R0, R1, #0x80\n"
10  "ORR R1, R1, #0x80\n"
11  "MSR CPSR_cf, R1\n"
12  :::"r1","r0");
13 
14  *p = 0x44;
15 
16  while(1);
17 }