This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| pt:programming:c:crashcourse [2014/12/03 18:15] – aalmeida | pt:programming:c:crashcourse [2020/07/20 09:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 142: | Line 142: | ||
| </ | </ | ||
| - | ~~PB~~ | + | < |
| ===== Operadores ===== | ===== Operadores ===== | ||
| Line 235: | Line 235: | ||
| As operações de //bit// são essenciais na manipulação de registos de um microcontrolador. Estes registos serão descritos adiante no capítulo de registos do AVR. | As operações de //bit// são essenciais na manipulação de registos de um microcontrolador. Estes registos serão descritos adiante no capítulo de registos do AVR. | ||
| - | ~~PB~~ | + | < |
| ===== Funções ===== | ===== Funções ===== | ||
| Line 275: | Line 275: | ||
| A execução de um programa em Linguagem C é sempre iniciada na função //main//. | A execução de um programa em Linguagem C é sempre iniciada na função //main//. | ||
| - | ~~PB~~ | + | < |
| ===== Declarações ===== | ===== Declarações ===== | ||
| Line 320: | Line 320: | ||
| </ | </ | ||
| - | ~~PB~~ | + | < |
| ==== Declaração Switch ==== | ==== Declaração Switch ==== | ||
| Line 355: | Line 355: | ||
| ===== Loops ===== | ===== Loops ===== | ||
| - | Os //loops// permitem-nos executar código | + | Os //loops// permitem-nos executar código várias |
| ==== while loop ==== | ==== while loop ==== | ||
| - | O código encapsulado por um //while// é executado até que a condição entre parêntesis obtenha o valor Verdadeiro. Exemplo: | + | O código encapsulado por um //while// é executado até que a condição entre parêntesis obtenha o valor Falso. Exemplo: |
| <code c> | <code c> | ||
| Line 372: | Line 372: | ||
| </ | </ | ||
| - | ~~PB~~ | + | < |
| ==== for loop ==== | ==== for loop ==== | ||
| Line 421: | Line 421: | ||
| ==== Operações de texto ==== | ==== Operações de texto ==== | ||
| - | As operações de texto são geralmente em microcontroladores para mostrar caracteres e texto num ecrã LCD por exemplo. | + | As operações de texto são geralmente |
| ==== sprintf ==== | ==== sprintf ==== | ||
| Line 436: | Line 436: | ||
| - | It will load formated text into variable which is given from the function second to n parameter. // | + | Esta função carrega a variável passada como primeiro argumento com texto formatado, texto este que é passado como segundo argumento da função, ao qual podem ser atribuídos valores com os seus restantes argumentos. O uso da função |
| - | Example: | + | Exemplo: |
| <code c> | <code c> | ||
| sprintf(x, "%d. is first", | sprintf(x, "%d. is first", | ||
| Line 449: | Line 449: | ||
| </ | </ | ||
| - | %s and %d are in this case parameters that will be repalaced accordingly by variable values which are the last parameters to function. The number of parameters must be the same as variables. | + | %s e %d neste exemplosão parâmetros que irão ser substituídos pelos valores dos dois últimos parâmetros da função, respetivamente. O número de parâmetros deve igualar ao número de variáveis utilizadas na expressão. |
| - | In the first example, the parameter was %d which was replaced by variable value 1. In the second example parameters were %s and %d which were replaced by variable values | + | No primeiro exemplo, o parâmetro |
| ^ Parameter | ^ Parameter | ||
| Line 472: | Line 472: | ||
| </ | </ | ||
| - | ==== General utilities | + | ==== Funções genéricas |
| - | Standard functions library | + | A biblioteca standard da Linguagem C (stdlib.h) |
| - | ==== Random function | + | ==== Função aleatória |
| - | Generating a random number is not so simple for AVR microcontroller. | + | Não é fácil gerar um número aleatório num microcontrolador. |
| - | At first the random number generator must be inputed with a number to be the basis of random number array generation. The array based on one number is always the same. To make the result more random, the function can be inputed with a values taken from free floating | + | Primeiro, é necessário dar como parâmetro de entrada um //gerador// que servirá como base para a geração do conjunto de números aleatórios. Este conjunto, se for sempre baseado no mesmo número // |
| - | Example: | + | Exemplo: |
| <code c> | <code c> | ||
| srand(100); | srand(100); | ||
| Line 488: | Line 488: | ||
| </ | </ | ||
| - | Example about generating a random number in range of 16: | + | Exemplo de geração de um número aleatório na gama de 1-16: |
| <code c> | <code c> | ||
| #include < | #include < | ||
| Line 496: | Line 496: | ||
| </ | </ | ||
| - | + | Para uma descrição mais detalhada de todas as funções incluídas na Linguagem | |
| - | The more in-depth english description about C-language functions is in: | + | |
| [[http:// | [[http:// | ||