コード例 #1
0
int main(void) {
    rts__init();
    rts__set(1);

    uint8_t counter = 0;
    uint8_t c = 'a';

    // display
    display__init();
    display__render_packed(0);

    USART0_REG_C |= (1<<usart0__stop_bits__BIT);
    usart0__rate__set(USART0__BAUD_RATE);
    usart0__tx__enabled__set(1);    

    for(;;) {
        usart0__out__write(c++);
        loop_until_bit_is_set(usart0__tx__complete__value__HOST, usart0__tx__complete__value__BIT);
        if (c == ('z' + 1)) {
            usart0__out__write(13);
            loop_until_bit_is_set(usart0__tx__complete__value__HOST, usart0__tx__complete__value__BIT);
            usart0__out__write(10);
            loop_until_bit_is_set(usart0__tx__complete__value__HOST, usart0__tx__complete__value__BIT);
 
            c = 'a';
            _delay_ms(1000);
            display__render_packed(++counter);
        }
    }

    return 0;
}
コード例 #2
0
int main(void) {
    rts__init();

    display__init();
    display__render_packed(0);

    usart0__init();
    usart0__rx__enabled__set(1);    
    usart0__tx__enabled__set(1);    

    for(;;) {
        uint8_t c = usart0__in__read();
        display__render_packed(c);
    }

    return 0;
}
コード例 #3
0
ファイル: main.c プロジェクト: semicontinuity/embedded
void main__thread__run(void) {
    onewire__command(sizeof(command_convert), 0, command_convert, 0);
    do {
        if (onewire__thread__is_runnable())
            onewire__thread__run();
//        else
//            sleep_cpu();
    }
    while (onewire__thread__is_alive());

    _delay_ms(750);

    onewire__command(sizeof(command), sizeof(response), command, response);
    do {
        if (onewire__thread__is_runnable())
            onewire__thread__run();
//        else
//            sleep_cpu();
    }
    while (onewire__thread__is_alive());

    display__render_packed(response[1]);

    uint16_t temperature = (response[0] | (response[1] << 8)) >> 4;
    display__render_packed((uint8_t)uint9_to_bcd(temperature));


    _delay_ms(1);
/*
    display__render_packed(4);

    uint8_t *r = response;
    for(uint8_t i = 0; i < DS18X20_SP_SIZE; i++) {
        debug__print_byte_as_hex(*r++);
    }

    display__render_packed(5);
    debug__print_P(PSTR("CRC: "));
    debug__print_byte_as_hex(onewire__crc__get());
    debug__putc('\n');
*/
}