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

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define LED_PR   0xc0220088
 
#define LED_BRIGHTNESS   200
 
#define LED_GREEN   4
 
#define LED_YELLOW   5
 
#define LED_ORANGE   7
 
#define LED_BLUE   8
 
#define LED_AF_BEAM   9
 
#define LED_TIMER   10
 

Funktionen

void shutdown ()
 
static void led_on (const int led, const int brightness)
 
static void led_off (const int led)
 
void debug_led (int state)
 
int get_flash_params_count (void)
 
void set_led (int led, int state)
 
void camera_set_led (int led, int state, int bright)
 

Makro-Dokumentation

#define LED_AF_BEAM   9

Definiert in Zeile 28 der Datei lib.c.

#define LED_BLUE   8

Definiert in Zeile 27 der Datei lib.c.

#define LED_BRIGHTNESS   200

Definiert in Zeile 23 der Datei lib.c.

#define LED_GREEN   4

Definiert in Zeile 24 der Datei lib.c.

#define LED_ORANGE   7

Definiert in Zeile 26 der Datei lib.c.

#define LED_PR   0xc0220088

Definiert in Zeile 21 der Datei lib.c.

#define LED_TIMER   10

Definiert in Zeile 29 der Datei lib.c.

#define LED_YELLOW   5

Definiert in Zeile 25 der Datei lib.c.

Dokumentation der Funktionen

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

Definiert in Zeile 66 der Datei lib.c.

67 {
68  if (state) {
69  if (bright > LED_BRIGHTNESS) bright = LED_BRIGHTNESS;
70  if (led == 6) {
71  led_on(4, bright);
72  led_on(5, bright);
73  } else
74  led_on(led, bright);
75  }
76  else
77  if (led == 6) {
78  led_off(4);
79  led_off(5);
80  } else
81  led_off(led);
82 }
void debug_led ( int  state)

Definiert in Zeile 47 der Datei lib.c.

48 {
49  if (state)
51  else
53 }
int get_flash_params_count ( void  )

Definiert in Zeile 55 der Datei lib.c.

55  {
56  return 83;
57 }
static void led_off ( const int  led)
static

Definiert in Zeile 39 der Datei lib.c.

40 {
41  if (led < 4 || led > 10 || led == 6) return;
42  static void* addr;
43  addr = led_table + (led * 0x40);
44  _UniqueLedOff(addr);
45 }
static void led_on ( const int  led,
const int  brightness 
)
static

Definiert in Zeile 31 der Datei lib.c.

32 {
33  if (led < 4 || led > 10 || led == 6) return;
34  static void* addr;
35  addr = led_table + (led * 0x40);
37 }
void set_led ( int  led,
int  state 
)

Definiert in Zeile 59 der Datei lib.c.

60 {
61  if (state)
62  led_on(led, LED_BRIGHTNESS);
63  else
64  led_off(led);
65 }
void shutdown ( )

Definiert in Zeile 4 der Datei lib.c.

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