Moving Average Embedded C


Como desenvolver melhor firmware mais rápido Um curso de um dia para pessoas que precisam desenvolver firmware embutido de alta qualidade em horários cada vez mais curtos. Desculpe - o registro para todas as classes já está fechado. Aulas públicas na Dinamarca Roskilde, Dinamarca - 24 de outubro de 2016 - Brochura e informações de localização estão aqui. Aarhus, Dinamarca - 26 de outubro de 2016 - Brochura e informações de localização estão aqui. Os melhores equipamentos da classe oferecem produtos embutidos com 0,1 bugs por mil linhas de código. Eles consistentemente batiam o cronograma, sem horas extras exageradas. Isso soa como sua equipe Se não, que medidas você está tomando para melhorar os resultados de suas equipes. Esperar que as coisas melhorem não mudará nada. QuotTrying Harderquot nunca funciona (como Harry Roberts provou em Quality Is Personal). Infelizmente, alguns grupos de firmware mantêm métricas, mas aqueles que fazem uma diminuição média de 40 na programação e uma melhoria da ordem de magnitude nas taxas de insetos depois de implementar as idéias da classe Jack Ganssles Better Firmware Faster. As informações de registro estão aqui. Resumo do curso Este curso de um dia irá ensinar-lhe formas práticas e comprovadas de desenvolver um melhor firmware mais rápido. É para o desenvolvedor que está buscando honestamente novas idéias, mas quem quer cortar o fluff acadêmico de metodologias formais e encontrar melhores maneiras de trabalhar agora. O foco é exclusivo em sistemas incorporados, onde o firmware só pode ser entendido no contexto do hardware. Você aprenderá novas maneiras de vincular o hardware e o software, eliminar os erros, gerenciar restrições em tempo real, cumprir prazos impossíveis e muito, muito mais. O curso é direcionado para desenvolvedores envolvidos na criação de produtos agora que devem encontrar maneiras de trabalhar de forma mais eficiente. Assume algum conhecimento de C. Cada participante receberá 0,7 Unidades de Educação Continuada. Comentários dos participantes Seu treinamento teve um grande impacto no nosso trabalho e nossa equipe é muito mais disciplinada e produtiva do que nunca. Acabamos de voltar de uma feira onde mostramos um produto sobre o qual aplicamos suas idéias e 1) não houve falhas embaraçosas como os anos anteriores, 2) todas as características entregues foram finalizadas e depuradas em vez de meio trabalhando e 3) resposta ao cliente Era tipicamente em qual lugar este produto foi toda a minha vida. Brad Nelson, Skip-Line, Inc. Muito obrigado pelo seu tempo e pelo excelente seminário. Eu tirei mais longe do que eu poderia ter imaginado. Seminário Adam Roman Jacks, as Melhores Idéias para o Desenvolvimento de Firmware Melhor Fasterquot tem que ser o mais interessante e agradável que eu já tenha feito e isso está dizendo algo como eu já passeei em alguns poucos durante minha carreira ao longo dos anos. Josh Hurvitz, tecnologia espacial. Porra, você estava bem e eu falo por todos os meninos. Eu acho que já estive em cerca de 100 seminários nos últimos dois anos, e eu me aborreceram a cada momento, mas este foi ótimo, estou impressionado com o quão bom e divertido foi. Soeren Panduro, APCC Obrigado por uma lição valiosa, pragmática e informativa no design de sistemas incorporados. Todos os participantes achavam que valia a pena o seu tempo. Craig DeFilippo, Pitney Bowes Eu só queria agradecer-lhe novamente pela excelente aula na semana passada. Sem exceções, todo o feedback dos participantes foi extremamente positivo. Estamos ansiosos para incorporar muitas sugestões e observações para tornar nosso trabalho aqui mais eficiente e de maior qualidade. Carol Batman, INDesign LLC. Muito obrigado por um excelente seminário. Nós realmente gostamos disso. Nós já colocamos para usar algumas das idéias que você nos deu. J. Sarget, CSC Obrigado pelo terrível seminário aqui na ALSTOM ontem Recebi comentários divertidas de uma multidão bastante difícil. Cheryl Saks, ALSTOM Jack, faz 6 meses desde que você veio aqui. Este último projeto foi enviado dentro de uma semana de previsão, com muito mais recursos do que o esperado. O cliente está emocionado e meu chefe também. Obrigado F. Henry, CACI Muito obrigado por uma ótima classe Agora, meus colegas de trabalho pensam que eu sou o guru Dana Woodring, Northrop Grumman Eu recomendo seu seminário para outros programadores. Ed Chehovin, US Navy Seu apresentador é Jack Ganssle, o arquiteto de sistemas embutidos mais famoso. Ele escreveu mais de 1000 artigos e seis livros sobre sistemas embarcados. Jack ensina conferências e negócios a nível internacional. Ele fundou três empresas de eletrônicos, incluindo um dos maiores fornecedores de ferramentas embutidas, e foi membro da equipe de resolução de problemas Super da Nasa, um pequeno painel de especialistas formado para assessorar a NASA na sequência da perda de Columbias. Sua extensa experiência de desenvolvimento de produtos forjou sua abordagem única para construir um firmware melhor rápido. Jack ajudou centenas de empresas e milhares de desenvolvedores a melhorar seu firmware e oferecer consistentemente melhores produtos no horário e no orçamento. Algumas empresas que enviaram pessoas para esta classe Por que tomar este curso Você está satisfeito com a forma como sua empresa desenvolve produtos incorporados Se a resposta for quotyesquot, provavelmente você já está usando os conceitos desta classe. Se, no entanto, você é como a maioria das pessoas nesta indústria, você percebe que há muito espaço para melhorias. Estas situações soam familiares Os prazos vêm e vão, mas o produto ainda não é enviado. Você nunca conhece o status de um projeto. É quase quotdonequot, mas novos problemas aparecem diariamente empurrando o lançamento final cada vez mais longe. Marketing monkeys com os recursos, mesmo que você esteja no meio do código de escrita. O sucesso da criação de produtos faz com que os produtos criem um alvo em movimento. Bugs pratica todo o esforço de desenvolvimento, consumindo vastos recursos. Os problemas pós-lançamento continuam a perseguir a equipe de desenvolvimento, criando dores de cabeça de suporte sem fim. A maioria das organizações cai em uma aceitação fatalista desses tipos de problemas, nunca percebendo que uma série de métodos bem conhecidos pode eliminar grande parte da agonia do desenvolvimento de produtos. O triadquot quottwisted - equilibrando três forças concorrentes A engenharia é uma das poucas profissões aprendidas principalmente no trabalho. Os colégios preparam as pessoas com uma boa base teórica, mas as habilidades necessárias para agendar, gerenciar e trabalhar diariamente em direção a um produto final provêm da orientação mentalmente casual por colegas de trabalho. Por que não treinamos desenvolvedores na arte de fazer projetos Qual é o seu recurso mais dispendioso dos recursos É o único recurso que você tem para obter produtos no mercado: o tempo dos desenvolvedores. Sem dúvida, você substitui e atualiza ferramentas, compiladores e outros, de vez em quando. O que você está fazendo para atualizar suas habilidades ou as habilidades de seus engenheiros Com um pouco de prática, você pode reduzir as taxas de insetos - e acelerar enormemente a liberação do produto. Neste curso, você aprenderá a obter seus produtos no mercado com mais rapidez, com menos defeitos. A apresentação e as recomendações são práticas, imediatamente úteis e bem focadas no desenvolvimento do sistema integrado - esta não é outra metodologia de software nobre e, no entanto, descartada. Essas rotinas de tempo de execução CC são executadas em um usec ou uma semana. Essa função de trigonometria está em todo o mapa, de 6 a 15 ms. Você aprenderá a escrever código em tempo real de forma proativa, antecipando problemas de tempo antes da depuração. Esboço do curso C, C ou Java O código de reutilização nos beneficiará Como tomar uma decisão de forma quantitativa. Como criar um cronograma preciso, que inclui uma distribuição de probabilidade. E, como negociar um cronograma para atender às necessidades reais do chefe. Como infundir todo o esforço de desenvolvimento com um foco de qualidade. A melhor maneira de gerenciar o rastreamento de recursos. E, há uma boa maneira de minimizar o rastejo. Pilhas e pilhas - recursos que você pode controlar. Superando os maiores impulsionadores de produtividade. Gerenciando erros para fornecer código de classe mundial. velozes. Inspeções rápidas de código que mantêm a programação em andamento. Cool maneiras de encontrar falhas no software. A arte de projetar código previsível em tempo real. Prevenção de debilidades no desempenho do sistema. Reentrância - eliminando falhas erráticas. Compreender como os sinais de alta velocidade afetam o desenvolvimento do firmware. Adicionando um loop de feed-back ao seu processo de desenvolvimento. Usando post-mortem para acelerar a entrega do produto. Um plano de sete passos para o sucesso do firmware. Informação de registro Tudo isso, além de um folheto de 100 páginas e 0,7 unidades de educação continuada, para 695 por pessoa. Cadastre-se com um mês de antecedência e receba um desconto de 50,00. Grupos de 3 ou mais pagas pagam apenas 595 por pessoa. O formulário de inscrição pode ser encontrado na última página da brochura. Use uma dessas três formas fáceis de pagar: Por Cheque: Faça cheques a pagar ao Grupo The Ganssle e envie seu formulário de inscrição para The Ganssle Group, 3520 Lawndale Rd. East, Reisterstown, MD 21136 Por VisaMasterCardAmex: Basta preencher o formulário de inscrição que pode ser encontrado na última página da brochura (aqui nas aulas da Dinamarca e Minneapolis) e envie-nos um e-mail para nós. Ou, ligue para o seu cadastro para (410) 504-6660. Os pagamentos são devidos duas semanas antes do início do curso. Os cancelamentos escritos são completamente reembolsáveis, menos uma taxa de processamento de 50, se feita mais de 14 dias antes do curso. Os cancelamentos feitos dentro de 14 dias não são reembolsáveis, mas são 100 transferíveis para qualquer outro curso que oferecemos. Do você precisa eliminar bugs em seu firmware Reduzir horários O meu seminário Better Firmware mais rápido de um dia ensinará seu time a operar em um mundo Nível de classe, produzindo código com muito menos erros em menos tempo. É rápido, divertido e cobre os problemas únicos enfrentados por desenvolvedores incorporados. Sua informação sobre como esta aula, ensinada em suas instalações, melhorará de forma mensurável a eficácia da sua equipe. Ganhe um Thunderboard da Silicon Labs - Entre no concurso aqui. Anuncie conosco Alcance 130K desenvolvedores incorporados por mês. Mais informações aqui. The Ganssle Group - infoganssle - copyright TGG, todos os direitos reservados. Informações de contato aqui. Interessado em anunciar conosco Mais informações aqui. Iniciando com a Energia Instruções passo a passo para configurar o IDE da Energia e executar o seu primeiro Esboço em um quadro da Texas Instruments LaunchPad. Meio Ambiente. Descrição do ambiente de desenvolvimento da Energia. Pranchas. Use o gerente da placa para instalar suporte para núcleos adicionais (novo na Energia 18). Preferências. O arquivo de preferências Energia contém muitas opções para personalizar a forma como a energia compila e faz upload de esboços. Processo de compilação. Descubra quais etapas o seu esboço passa no caminho para a placa LaunchPad. Pin Mapping. Lista completa de todas as imagens e instruções de mapeamento de pin para cada placa de hardware suportada pela Energia. Bibliotecas. Lista completa de todas as bibliotecas complementares suportadas pela Energia. Confira este tutorial para Energia 18 Build IDE da Source. Use a última base de código do Github para criar uma construção da Energia. Importar para o Code Composer Studio. Use as funções e os esboços da energia na CCS versão 6, IDE do I8217s baseado em Eclipse. Importar para CCS Cloud: use funções e esboços de energia na CCS Cloud. IDE do navegador TI8217s. Fundamentos Esta seção contém explicações de alguns elementos da eletrônica, do hardware LaunchPad, do software Energia e dos conceitos por trás deles. Esboço. Os vários componentes de um esboço (programa Energia) e como funcionam eletricidade. O princípio que alimenta os circuitos eletrônicos. O conceito fundamental para tensão de projeto elétrico. Carga elétrica transportada entre dois pontos atual. O fluxo de elétrons em um fio Microcontroladores Digital Pins. Como os pinos funcionam e o que significa para eles serem configurados como entradas ou saídas. Pinos de entrada analógica. Detalhes sobre a conversão analógico-digital e outros usos dos pinos. PWM. Como a função analogWrite () simula uma saída analógica usando modulação de largura de pulso. Memória. Os vários tipos de memória disponíveis na placa LaunchPad. Temporizadores: contadores digitais que incrementam ou diminuem a uma freqüência fixa usada para sincronizar sistemas eletrônicos. Registros: um espaço reservado para obter informações sobre algumas condições de hardware. Sensores. Os sensores são usados ​​para detectar e medir sinais analógicos do meio ambiente. Variáveis ​​da técnica de programação Como definir e usar variáveis ​​Funções. Como definir e usar bibliotecas de funções. Como escrever sua própria biblioteca Bit Manipulation. Como usar bit de protocolos de comunicação matemática. Como usar protocolos para passar dados Multitarefa. Como configurar aplicações multiprogramas Basic Electronics Components Breadboard. Uma superfície de prototipagem para criar fios sem solda. Conecte componentes e sistemas elétricos Resistores. Altere a tensão do circuito e os capacitores de corrente. Armazene energia em um circuito Filtros: remova ou melhore os componentes de freqüência do sinal Amplificadores: aumente a potência de um sinal Transistores. Amplificar e trocar sinais eletrônicos Indutores: resistir mudanças em interruptores de corrente elétrica. Altere o caminho do fluxo elétrico. Botão: injete um sinal em um diodo de circuito. Permite o fluxo elétrico em apenas LEDs de uma direção. Os diodos emissores de luz atuam como indicadores visuais de medidores, escopos e analisadores. Use essas ferramentas para medir a tensão e os circuitos integrados atuais. Componentes que podem fazer operações complexas Funções básicas Programas simples que demonstram comandos básicos da Energia. Estes são incluídos no ambiente Energia para abri-los, clique no botão Abrir na barra de ferramentas e veja a pasta Exemplos. Para alguns exemplos, hardware adicional é necessário. Estes podem ser adquiridos individualmente ou em kits de kits de eletrônicos populares. O Sidekick Basic Kit para TI LaunchPad da Seeedstudio é altamente recomendado pela comunidade da Energia. Mínimo. O mínimo de código necessário para iniciar um esboço da Energia. Piscar. Ligue e desligue um LED. DigitalReadSerial. Leia uma opção, imprima o estado no Monitor Energia Serial. AnalogReadSerial. Leia um potenciômetro, imprima o estado 8217s no Monitor Energia Serial. Desvaneça. Demonstra o uso da saída analógica para desvanecer um LED. ReadAnalogVoltage. Lê uma entrada analógica e imprime a tensão no monitor serial sem piscar sem atraso. Piscar um LED sem usar a função delay (). Botão. Use um botão para controlar um LED. Debuar. Leia um botão, ruído de filtragem. Mudança de estado do botão. Contando o número de botões empurrados. Input Pullup Serial. Demonstra o uso de INPUTPULLUP com pinMode (). Tom. Toque uma melodia com um alto-falante Piezo. Pitch seguidor. Toque um tom em um altofalante piezo dependendo de uma entrada analógica. Teclado simples. Um teclado musical de três teclas que usa sensores de força e um alto-falante piezo. Tone4. Toque tons em alto-falantes múltiplos usando o comando tone (). AnalogInOutSerial. Leia um pino de entrada analógico, mapeie o resultado e, em seguida, use esses dados para diminuir ou iluminar um LED. Entrada analógica. Use um potenciômetro para controlar o piscar de um LED. AnalogWrite. Desligue 7 LEDs para ligar e desligar, um por um, usando uma placa MSP430G2 LaunchPad. Calibração. Defina um máximo e mínimo para valores de sensores analógicos esperados. Desbotando. Use uma saída analógica (pino de PWM) para desvanecer um LED. Suavização. Liso leituras múltiplas de uma entrada analógica. 4munication Estes exemplos incluem código que permite que o LaunchPad fale com o processamento de esboços executados no computador. Para obter mais informações ou para baixar Processamento, consulte processing. org. ReadASCIIString. Analise uma seqüência de caracteres separada por vírgulas para desaparecer uma tabela LED ASCII. Demonstra as funções de saída serial avançadas da Energia8217s. Obscuro. Mova o mouse para alterar o brilho de um LED. Gráfico. Envie dados para o computador e grafica em Processamento. Pixel físico. Ligue e desligue um LED enviando dados para o LaunchPad do Processamento. Misturador de cores virtual. Envie várias variáveis ​​do LaunchPad para o seu computador e lê-las no processamento. Resposta de chamada em série. Envie diversos modos de usar um método de chamada e resposta (handshaking). Resposta em Chamada Serial ASCII. Envie várias variáveis ​​usando um método de chamada e resposta (handshaking), e ASCII-codifique os valores antes de enviar. SerialEvent. Demonstra o uso do SerialEvent (). Entrada serial (Mudança (caso)). Como tomar diferentes ações com base em caracteres recebidos pela porta serial. 5. Estruturas de Controle Se Declaração (Condicional): como usar uma instrução if para alterar as condições de saída com base na alteração das condições de entrada. Para Loop. Controlando LEDs múltiplos com um loop for. Array. Uma variação no exemplo For Loop que demonstra como usar uma matriz. Enquanto Loop. Como usar um loop while para calibrar um sensor enquanto um botão está sendo lido. Switch Case. Como escolher entre um número discreto de valores. Equivalente a múltiplas afirmações If. Este exemplo mostra como dividir um intervalo de sensor8217s em um conjunto de quatro bandas e levar quatro ações diferentes dependendo da banda em que o resultado está em. Alternar caso 2. um segundo exemplo de exemplo de troca, mostrando como tomar diferentes ações com base em caracteres Recebido na porta serial. StringAdditionOperator. Adicione cordas juntas em várias maneiras. StringAppendOperator. Anexar dados às cordas. StringCaseChanges. Mude o caso de uma string. StringCharacters. Obtém o valor de um caractere específico em uma string. StringComparisonOperators. Compare as cordas em ordem alfabética. StringConstructors. Como inicializar objetos de string. StringIndexOf. Procure a primeira instância de um personagem em uma string. StringLength amp StringLengthTrim. Obter e cortar o comprimento de uma string. StringReplace. Substitua caracteres individuais em uma string. StringStartsWithEndsWith. Verifique quais as categorias de caracteres com as quais uma determinada cadeia começa ou termina. StringSubstring. Procure 8220phrases8221 dentro de uma string determinada. 7.Sensores, Motores, Amp. Displays Temperatura: use a bordo do sensor de temperatura do núcleo MCU. Sensor de inclinação: use um sensor de inclinação básico. Servo: mova um servo para controlar objetos mecânicos. Motor básico: gire um motor básico. Exibição de 7 segmentos: exibe números básicos e valores de letras. 221516 Exibição de caracteres: cadeias de saída para uma exibição de caracteres. 8. MultiThreading ButtonEvent: Leia um botão em uma tarefa e tenha outra tarefa aguarde o botão a ser pressionado EventLibrary: envie um evento em uma tarefa e tenha outra tarefa aguardando o evento Monitor: Exibe a utilização da CPU, o uso da memória da tarefa, etc. Requer o terminal VT100 MultiAnalogInput. Lê entradas analógicas em diferentes tarefas a diferentes taxas MultiBlink. Piscar 3 LEDs em diferentes taxas MultiTaskSerial: mostra 2 threads enviando uma string para o monitor Serial a taxas diferentes 9.Connectivity WiFi: exemplos de biblioteca WiFi MQTT. Use o protocolo leve MQTT para habilitar as aplicações M2M do amplificador IoT StandardFirmata. Use o protocolo firmata para se comunicar dinamicamente com o microcontrolador Temboo. Acesse centenas de APIs da web através do Temboo usando Energia ATampT M2X. Dados da Post Energia para o serviço da nuvem M2X da ATampT BLE Mini. Use o Red Bear Lab BLE Mini para controlá-lo LaunchPad Freeboard. io: Crie um painel da nuvem com seus dados da Energia usando freeboard. io Contiki: Access Contiki OS para IoT usando Energia 10.BoosterPacks Olimex8x8matrix: crie uma marca de rolagem com uma matriz LED. Sharp LCD Display: exibe imagens e texto no LCD de baixa potência EducationalBP: crie uma bola mágica 8 com um acelerômetro e display LCD. EducationalBP MKII. Exemplos envolvendo zumbador, LCD, LEDs, acelerômetro, botões e mais CC3000. Introdução ao SimpleLink WiFi CC3000 BoosterPack CC3100. Introdução ao SimpleLink WiFi CC3100 BoosterPack Outros Tutoriais Sidekick para TI LaunchPad. Use o kit básico Seeedstudio Sidekick para TI LaunchPad com Energia SIK para LaunchPad. Use o kit Sparkfun Inventor8217s com o Kit Starter Energia Grove para o LaunchPad. Use módulos Grove para acessar sensores e componentes para prototipagem Operação O-Scope. Aprendendo a usar um Osciloscópio Tektronix com MSP430 LaunchPad LabVIEW Home: Use a Energia em National Instruments Processamento LabVIEW: crie GUIs e representações visuais dos dados da Energia usando o Processamento IDE Energia. nulearn. Oficinas completas sobre o material da energia IoP Machine. Saiba como criar uma máquina de pipoca conectada à Internet Energy Trace. Saiba como medir o consumo de energia no seu sistema Energia. Ampliar e Desenvolver Energia Adicionando Conteúdo da Web: como contribuir corretamente com novos tutoriais e referências ao site da Energia. Escrevendo uma Biblioteca. Criando bibliotecas para ampliar a funcionalidade da Energia. Vai passo a passo através do processo de fazer uma biblioteca a partir de um esboço. Construa Energia da Fonte. Como construir energia na sua máquina a partir da última base de código. Preferências. O arquivo de preferências Energia contém muitas opções para personalizar a forma como a energia compila e faz upload de esboços. Processo de compilação. Descubra quais etapas o seu esboço passa no caminho para a placa LaunchPad. Fonte. Navegação online do código-fonte da Energia (em um site externo) Bugs. A lista atual dos erros do software Energia (em um site externo). Wiki. Os detalhes técnicos do projeto Energia, aprimoramentos, problemas, referências podem ser encontrados no Wiki (em um site externo). Os esboços da energia são baseados em CC e compilados com o compilador open-source MSPGCC. A linguagem Energia vem da fiação. O ambiente Energia é baseado em Processamento e inclui modificações feitas pela Fiação. Energia BYOB (Build Your Own BoosterPack). Instruções focadas no fabricante para projetar e criar seu próprio BoosterPack compatível com LaunchPad. TI BYOB (Build Your Own BoosterPack). Instruções oficiais da TI para projetar e criar seu próprio BoosterPack compatível com LaunchPad. Feed do Twitter

Comments