SDCC Compiler User Guide

Total Page:16

File Type:pdf, Size:1020Kb

SDCC Compiler User Guide SDCC Compiler User Guide SDCC 3.6.1 $Date:: 2016-06-19 #$ $Revision: 9628 $ Contents 1 Introduction 6 1.1 About SDCC.............................................6 1.2 SDCC Suite Licenses.........................................7 1.3 Documentation............................................8 1.4 Typographic conventions.......................................8 1.5 Compatibility with previous versions.................................8 1.6 System Requirements......................................... 10 1.7 Other Resources............................................ 10 2 Installing SDCC 11 2.1 Configure Options........................................... 11 2.2 Install paths.............................................. 13 2.3 Search Paths.............................................. 14 2.4 Building SDCC............................................ 16 2.4.1 Building SDCC on Linux.................................. 16 2.4.2 Building SDCC on Mac OS X................................ 16 2.4.3 Cross compiling SDCC on Linux for Windows....................... 17 2.4.4 Building SDCC using Cygwin and Mingw32........................ 17 2.4.5 Building SDCC Using Microsoft Visual C++ 2010 (MSVC)................ 18 2.4.6 Windows Install Using a ZIP Package............................ 19 2.4.7 Windows Install Using the Setup Program.......................... 19 2.4.8 VPATH feature........................................ 19 2.5 Building the Documentation..................................... 20 2.6 Reading the Documentation..................................... 20 2.7 Testing the SDCC Compiler..................................... 20 2.8 Install Trouble-shooting........................................ 21 2.8.1 If SDCC does not build correctly............................... 21 2.8.2 What the ”./configure” does................................. 21 2.8.3 What the ”make” does.................................... 21 2.8.4 What the ”make install” command does............................ 21 2.9 Components of SDCC........................................ 22 2.9.1 sdcc - The Compiler..................................... 23 2.9.2 sdcpp - The C-Preprocessor................................. 23 2.9.3 sdas, sdld - The Assemblers and Linkage Editors...................... 23 2.9.4 s51, sz80, shc08, sstm8 - The Simulators.......................... 23 2.9.5 sdcdb - Source Level Debugger............................... 23 3 Using SDCC 24 3.1 Standard-Compliance......................................... 24 3.1.1 ISO C90 and ANSI C89................................... 24 3.1.2 ISO C95........................................... 25 3.1.3 ISO C99........................................... 25 3.1.4 ISO C11........................................... 25 3.1.5 Embedded C......................................... 25 3.2 Compiling............................................... 25 1 CONTENTS CONTENTS 3.2.1 Single Source File Projects.................................. 25 3.2.2 Postprocessing the Intel Hex file............................... 26 3.2.3 Projects with Multiple Source Files............................. 26 3.2.4 Projects with Additional Libraries.............................. 27 3.2.5 Using sdar to Create and Manage Libraries......................... 27 3.2.6 Using sdcclib to Create and Manage Libraries (deprecated)1 ................ 27 3.3 Command Line Options........................................ 29 3.3.1 Processor Selection Options................................. 29 3.3.2 Preprocessor Options..................................... 30 3.3.3 Optimization Options..................................... 30 3.3.4 Other Options......................................... 31 3.3.5 Linker Options........................................ 33 3.3.6 MCS51 Options....................................... 34 3.3.7 DS390 / DS400 Options................................... 35 3.3.8 Options common to all z80-related ports (z80, z180, r2k, r3ka, gbz80)........... 35 3.3.9 Z80 Options (apply to z80, z180, r2k and r3ka port)..................... 36 3.3.10 GBZ80 Options........................................ 36 3.3.11 Intermediate Dump Options................................. 36 3.3.12 Redirecting output on Windows Shells............................ 36 3.4 Environment variables........................................ 36 3.5 SDCC Language Extensions..................................... 37 3.5.1 MCS51/DS390 intrinsic named address spaces....................... 37 3.5.1.1 __data / __near.................................. 37 3.5.1.2 __xdata / __far................................... 37 3.5.1.3 __idata....................................... 37 3.5.1.4 __pdata...................................... 38 3.5.1.5 __code....................................... 38 3.5.1.6 __bit........................................ 38 3.5.1.7 __sfr / __sfr16 / __sfr32 / __sbit......................... 39 3.5.1.8 Pointers to MCS51/DS390 intrinsic named address spaces............ 39 3.5.1.9 Notes on MCS51 memory layout......................... 40 3.5.2 Z80/Z180 intrinsic named address spaces.......................... 40 3.5.2.1 __sfr (in/out to 8-bit addresses).......................... 40 3.5.2.2 __banked __sfr (in/out to 16-bit addresses).................... 41 3.5.2.3 __sfr (in0/out0 to 8 bit addresses on Z180/HD64180).............. 41 3.5.3 HC08/S08 intrinsic named address spaces.......................... 41 3.5.3.1 __data....................................... 41 3.5.3.2 __xdata...................................... 41 3.5.4 Non-intrinsic named address spaces............................. 41 3.5.5 Absolute Addressing..................................... 42 3.5.6 Preserved register specification................................ 43 3.5.7 Binary constants....................................... 43 3.5.8 Returning void........................................ 43 3.5.9 Omitting promotion on arguments of vararg function.................... 43 3.6 Parameters and Local Variables.................................... 43 3.7 Overlaying.............................................. 44 3.8 Interrupt Service Routines...................................... 45 3.8.1 General Information..................................... 45 3.8.1.1 Common interrupt pitfall: variable not declared volatile ............. 45 3.8.1.2 Common interrupt pitfall: non-atomic access ................... 45 3.8.1.3 Common interrupt pitfall: stack overflow ..................... 45 3.8.1.4 Common interrupt pitfall: use of non-reentrant functions ............ 45 3.8.2 MCS51/DS390 Interrupt Service Routines.......................... 46 3.8.3 HC08 Interrupt Service Routines............................... 46 1With sdcc version 3.2.0 the sdcclib utility is deprecated. Sdar utility should be used to create sdcc object file archives. Sdcclib utility will become obsolete in one of next sdcc releases and will be removed from sdcc packages. 2 CONTENTS CONTENTS 3.8.4 Z80 and Z180 Interrupt Service Routines.......................... 46 3.8.5 Rabbit 2000, 3000, 3000A and 4000 Interrupt Service Routines.............. 47 3.8.6 GBZ80 and TLCS-90 Interrupt Service Routines...................... 47 3.9 Enabling and Disabling Interrupts.................................. 47 3.9.1 Critical Functions and Critical Statements.......................... 47 3.9.2 Enabling and Disabling Interrupts directly.......................... 47 3.9.3 Semaphore locking (mcs51/ds390).............................. 48 3.10 Functions using private register banks (mcs51/ds390)........................ 48 3.11 Inline Assembler Code........................................ 49 3.11.1 Inline Assemblere Code Formats............................... 49 3.11.1.1 Old __asm ... __endasm; Format......................... 49 3.11.1.2 New __asm__ (”inline_assembler_code”) Format................ 49 3.11.2 A Step by Step Introduction................................. 49 3.11.3 Naked Functions....................................... 51 3.11.4 Use of Labels within Inline Assembler............................ 52 3.12 Interfacing with Assembler Code................................... 53 3.12.1 Global Registers used for Parameter Passing (8051)..................... 53 3.12.2 Registers usage (8051).................................... 53 3.12.3 Assembler Routine (non-reentrant) (8051).......................... 53 3.12.4 Assembler Routine (reentrant) (8051)............................ 54 3.12.5 Small-C calling convention.................................. 55 3.13 Support routines for integer multiplicative operators......................... 55 3.14 Floating Point Support........................................ 55 3.15 Library Routines........................................... 56 3.15.1 Compiler support routines (_gptrget, _mulint etc.)..................... 56 3.15.2 Stdclib functions (puts, printf, strcat etc.).......................... 56 3.15.2.1 <stdio.h>...................................... 56 3.15.2.2 <malloc.h>..................................... 57 3.15.3 Math functions (sinf, powf, sqrtf etc.)............................ 57 3.15.3.1 <math.h>...................................... 57 3.15.4 Other libraries........................................ 57 3.16 Memory Models............................................ 58 3.16.1 MCS51 Memory Models................................... 58 3.16.1.1 Small, Medium, Large and Huge......................... 58 3.16.1.2 External Stack................................... 58 3.16.2 DS390 Memory Model.................................... 58 3.17 Pragmas................................................ 58 3.18 Defines Created
Recommended publications
  • Linux and Electronics
    Linux and Electronics Urs Lindegger Linux and Electronics Urs Lindegger Copyright © 2019-11-25 Urs Lindegger Table of Contents 1. Introduction .......................................................................................................... 1 Note ................................................................................................................ 1 2. Printed Circuits ...................................................................................................... 2 Printed Circuit Board design ................................................................................ 2 Kicad ....................................................................................................... 2 Eagle ..................................................................................................... 13 Simulation ...................................................................................................... 13 Spice ..................................................................................................... 13 Digital simulation .................................................................................... 18 Wings 3D ....................................................................................................... 18 User interface .......................................................................................... 19 Modeling ................................................................................................ 19 Making holes in Wings 3D .......................................................................
    [Show full text]
  • Tesis De Microcontroladores.Pdf
    UNIVERSIDAD DE EL SALVADOR FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE DEPARTAMENTO DE INGENIERÍA Y ARQUITECTURA. TRABAJO DE GRADUACIÓN DENOMINADO: “DISEÑO DE GUÍAS DE TRABAJO Y CONSTRUCCIÓN DE EQUIPO DIDÁCTICO PARA LA IMPLANTACIÓN DE PRÁCTICAS DE LABORATORIO CON MICRO CONTROLADORES EN LA CARRERA DE INGENIERÍA DE SISTEMAS INFORMÁTICOS DE LA FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE.” PARA OPTAR AL GRADO DE: INGENIERO DE SISTEMA INFORMÁTICOS PRESENTAN: FRANCIA ESCOBAR, ROBERTO ANTONIO GARCÍA, JUAN CARLOS UMAÑA ORDOÑEZ, JORGE ARTURO DOCENTE DIRECTOR ING. JOSE FRANCISCO ANDALUZ NOVIEMBRE, 2007. SANTA ANA EL SALVADOR CENTRO AMÉRICA UNIVERSIDAD DE EL SALVADOR RECTOR MÁSTER RUFINO ANTONIO QUEZADA SÁNCHEZ VICERRECTOR ACADÉMICO MÁSTER MIGUEL ÁNGEL PÉREZ RAMOS VICE RECTOR ADMINISTRATIVO MÁSTER ÓSCAR NOÉ NAVARRETE SECRETARIO GENERAL LICENCIADO DOUGLAS VLADIMIR ALFARO CHÁVEZ FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE DECANO LIC. JORGE MAURICIO RIVERA VICE DECANO LIC. ELADIO ZACARÍAS ORTEZ SECRETARIO LIC. VÍCTOR HUGO MERINO QUEZADA JEFE DE DEPARTAMENTO DE INGENIERÍA ING. RENÉ ERNESTO MARTÍNEZ BERMÚDEZ AGRADECIMIENTOS A DIOS TODOPODEROSO Por permitir que llegara hasta el final de la carrera, por no dejarme solo en este camino y siempre levantarme cuando necesite de su apoyo y fuerza para continuar adelante. A MI MADRE ÁNGELA VICTORIA ESCOBAR DE FRANCIA Por su apoyo, paciencia y ser un pilar en mi vida; sin la cual no hubiese podido culminar la carrera., le dedico este triunfo con las palabras con las que siempre me ha dado confianza y fuerza de seguir adelante “se triunfa cuando se persevera”. A MI PADRE JOSÉ ANTONIO FRANCIA ESCOBAR Que su ejemplo formo en mi la idea de siempre mirar más adelante, seguir luchando y creer que siempre es posible superarse cada día más; gracias por su inmenso apoyo desde todos los puntos de mi carrera y mi vida, como padre, docente, asesor y amigo.
    [Show full text]
  • MEK6800D2 Manual 2Ed 1977.Pdf
    MOTOROLA Semiconductor Products Inc. MEK6800D2 MANUAL Circuit diagrams external to Motorola products are included as a means of illustrating typical Microprocessor applications; consequently, complete information sufficient for construction purposes is not necessarily given. The information in this manual has been carefully checked and is believed to be entirely reliable. However, no responsibility is assumed for inaccuracies. Furthermore, such information does not convey to the purchaser of the semiconductor devices described any license under the patent rights of Motorola Inc. or others. Motorola reserves the right to change specifications without notice. EXORciser, JBUG and MINlbug are trademarks of Motorola Inc. Second Edition © MOTOROLA INC., 1977 First Edition © 1976 "All Rights Reserved" Printed in U.S.A. TABLE OF CONTENTS CHAPTER 1: Introduction 1-1 General Description and Capability . 1-1 1-2 Preparation for Use . 1-4 1-2.1 Construction Hints ..................................................... 1-5 1-3 Start-up Procedure . 1-6 1-4 Operating Procedures . 1-6 1-4.1 Memory Examine and Change ............................................ 1-7 1-4.2 Escape (Abort) ........................................................ 1-7 1-4.3 Register Display ....................................................... 1-7 1-4.4 Go to User Program .................................................... 1-9 1-4.5 Punch from Memory to Tape ............................................. 1-9 1-4.6 Load from Tape to Memory .............................................
    [Show full text]
  • Genel Amaçli Robot Kolu Tasarimi
    DOKUZ EYLÜL ÜNøVERSøTESø FEN Bø/øMLERø ENSTøTÜSÜ GENEL AMAÇLI ROBOT KOLU TASARIMI Orhan Efe ALP Nisan, 2012 øZMøR GENEL AMAÇLI ROBOT KOLU TASARIMI Dokuz Eylül Üniversitesi Fen Bilimleri Enstitüsü Yüksek Lisans Tezi Mekatronik Mühendisli÷i Bölümü, Mekatronik Mühendisli÷i ProgramÕ Orhan Efe ALP Nisan, 2012 øZMøR TEùEKKÜR ÇalÕúmalarÕm boyunca de÷erli yardÕm ve katkÕlarÕyla beni yönlendiren, hoúgörü ve sabÕr gösteren de÷erli hocam ve tez danÕúmanÕm Yrd. Doç. Dr. Nalan ÖZKURT’a, yine önemli tecrübelerinden faydalandÕ÷Õm Prof. Dr. Erol UYAR hocama, robotik konusunda yo÷un tecrübelerinden yararlandÕ÷Õm de÷erli arkadaúÕm Aytekin GÜÇLÜ ’ye, mekanik aksam konusunda yo÷un eme÷i geçen, atölye ve teçhizatlarÕQÕ kullanÕPÕma açan de÷erli ustalarÕm Önder ve Erkan KURTKAFA’ya, bana verdikleri destek için çok teúekkür ederim. Son olarak bu günleri görmemi sa÷layan, hayatÕmda herúeyi borçlu oldu÷um herúeyden çok sevdi÷im, güvenlerini ve sevgilerini her zaman yo÷un hissetti÷im Húim Hatice ALP, annem Nüzhet ALP, babam Ali Ergün ALP, ablalarÕm Fethiye Yelkin ALP, Ceren SERøNKAN, Canan TOKEM, dayÕm Niyazi TOKEM ve anneannem Fikriye TOKEM’ en büyük teúekkürü borç bildi÷imi söylemek isterim. Orhan Efe ALP iii GENEL AMAÇLI ROBOT KOLU TASARIMI ÖZ Bu tez, üç eksen ve bir adet tutucuya sahip bir robot manipülatör ve robot manipülatöre insansÕ el hassasiyeti kazandÕrmak amacÕ ile ivmeölçer sensörlerden gönderilen komutlarla yönlendirilen, mikroiúlemci ailesinden PIC ile kontrol edilen servo motor sürücü kartÕ tasarÕm çalÕúmasÕQÕ ortaya koymaktadÕr. Robot manipülatörün tasarÕPÕ için Dassault Systemes firmasÕQÕn üretti÷i Solidworks programÕ kullanÕlmÕúWÕr. BaskÕ devre tekni÷i ile üretilen 5 adet servo motoru sürebilen motor sürücü kartÕ Proteus ve Eagle çizim programlarÕnda tasarlanmÕú ve çizilmiútir.
    [Show full text]
  • Freescale.Com
    MC9S08QE32 MC9S08QE16 Reference Manual Related Documentation: HCS08 Microcontrollers • MC9S08QE32 (Data Sheet) Contains pin assignments and diagrams, all electrical specifications, and mechanical drawing outlines. Find the most current versions of all documents at: http://www.freescale.com MC9S08QE32RM Rev. 3 9/2011 freescale.com MC9S08QE32 Features Features – ACMPx — Two analog comparators with selectable interrupt • 8-Bit HCS08 Central Processor Unit (CPU) on rising, falling, or either edge of comparator output; – Up to 50.33 MHz HCS08 CPU at 3.6V to 2.4V, 40 MHz CPU compare option to fixed internal bandgap reference voltage; at 2.4 V to 2.1 V and 20 MHz CPU at 2.1 V to 1.8 V across outputs can be optionally routed to TPM module; operation in temperature range of –40 °C to 85 °C stop3 – HC08 instruction set with added BGND instruction – SCIx — Two serial communications interface modules with – Support for up to 32 interrupt/reset sources optional 13-bit break; full duplex non-return to zero (NRZ); •On-Chip Memory LIN master extended break generation; LIN slave extended – Flash read/program/erase over full operating voltage and break detection; wake up on active edge temperature – SPI — One serial peripheral interface; full-duplex or – Random-access memory (RAM) single-wire bidirectional; double-buffered transmit and – Security circuitry to prevent unauthorized access to RAM and receive; master or slave mode; MSB-first or LSB-first shifting flash contents – IIC — One IIC; up to 100 kbps with maximum bus loading; • Power-Saving Modes multi-master
    [Show full text]
  • An Introduction to Openvg™ FTF-AUT-F0465
    An Introduction to OpenVG™ FTF-AUT-F0465 Oliver Tian | Auto FAE M A Y . 2 0 1 4 TM External Use Agenda • Trend of Graphics in Vehicle • Roadmap of Cluster • Introduction of Rainbow/Vybrid • OpenVG Scenario • Development Ecosystem • Conclusion TM External Use 1 Trend of Graphics in Vehicle TM External Use 2 The Connected Vehicle Infotainment + Communication + Security • Consumer electronics trends are dictating features in the car • Always connected, applications driven, advanced graphics • Infotainment systems becoming battleground for Auto differentiation • As more connected systems get introduced into the vehicle, the need for security is critical − Increasing external communication features (Bluetooth, TPMS, Ethernet, Wi-Fi, etc). − Future interface for vehicle-to-vehicle and vehicle-to-infrastructure. TM External Use 3 Mobility for Everyone Affordable Solutions for Emerging Markets • 100M vehicles annually forecasted before 2020, on top of motorcycle & e-bike growth • 80% of quantity growth after 2015 happening in emerging markets • Safety and emissions reduction are key for a sustainable development Source: IHS Automotive, February 2014 TM External Use 4 More, More, More for Less, Less, Less More performance, more embedded memory, more safety for less cost, less power and less development effort More • Electronic complexity • ECUs per car (50+) • MCUs per car (100+) • In-car Wi-Fi ® (7.2Mbps and 3.7Bpcs by 2017) iSuppli Less Reuse • Other markets have less critical applications • Some automotive specific challenges TM External Use 5 Today’s Car • Complex computerized control − Millions of lines of code, from multiple vendors − Dozens of distinct ECUs, from multiple vendors • Shared internal networking (e.g., CAN, FlexRay) − Increasing external communications features .
    [Show full text]
  • Universidad De San Carlos De Guatemala Facultad De Ingeniería Escuela De Ingeniería Mecánica Eléctrica
    Universidad de San Carlos de Guatemala Facultad de Ingeniería Escuela de Ingeniería Mecánica Eléctrica IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA III Juan Alejandro Ortíz Chial Asesorado por el Ing. Enrique Sarvelio Ortíz Chial Guatemala, mayo de 2018 UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA III TRABAJO DE GRADUACIÓN PRESENTADO A LA JUNTA DIRECTIVA DE LA FACULTAD DE INGENIERÍA POR JUAN ALEJANDRO ORTÍZ CHIAL ASESORADO POR EL ING. ENRIQUE SARVELIO ORTÍZ CHIAL AL CONFERÍRSELE EL TÍTULO DE INGENIERO ELECTRICISTA GUATEMALA, MAYO DE 2018 UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERÍA NÓMINA DE JUNTA DIRECTIVA DECANO Ing. Pedro Antonio Aguilar Polanco VOCAL I Ing. Angel Roberto Sic García VOCAL II Ing. Pablo Christian De León Rodríguez VOCAL III Ing. José Milton De León Bran VOCAL IV Br. Óscar Humberto Galicia Núñez VOCAL V Br. Carlos Enrique Gómez Donis SECRETARIA Inga. Lesbia Magalí Herrera López TRIBUNAL QUE PRACTICÓ EL EXAMEN GENERAL PRIVADO DECANO a.i. Ing. Angel Roberto Sic García EXAMINADOR Ing. Bayron Armando Cuyán Culajay EXAMINADOR Ing. Julio Rolando Barrios Archila EXAMINADOR Ing. Jorge Gilberto González Padilla SECRETARIO Ing. Hugo Humberto Rivera Pérez HONORABLE TR¡BUNAL EXAMINADOR En cumplimiento con Ios preceptos que establece la ley de la Universidad de San Carlos de Guatemala, presento a su consideracién mi trabajo de graduación titulado: IMPLEMENTACIÓN DEL PIC PLC AL LABORATORIO DE ELECTRÓNICA I¡I Tema que me fuera asignado por la Dirección de la Escuela de lngeniería Mecánica Eléctrica, con fecha 01 de julio de 2011. Ghial ACTO QUE DEDICO A: Dios Por ser una importante influencia en mi carrera, entre otras cosas.
    [Show full text]
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb
    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
    [Show full text]
  • Beyond Bits Motor Control Edition
    BeyondBitsIssue 8 MOTOR CONTROL EDITION Motor Control Introducing Motor Control Motor control and motor drive solutions With a rich history of innovation in motor control, Freescale is dedicated to continue our commitment to understand and solve the current roadblocks developers face with a comprehensive portfolio of solutions. The latest edition of Beyond Bits captures the attention of both novice and advanced motor control developers looking to: • Reduce development time by jump starting their effort with reference designs, application notes and a global support team • Increase power efficiency by using the most advanced control techniques available through differentiated hardware platforms and peripherals, motor control libraries, and unique tools to optimize these systems • Decrease system costs via a best-in-class portfolio of high-performance, low-power MCUs capable of very flexible, innovative control implementations • Comply with safety and energy mandates via complimentary libraries and advanced algorithms Beyond Bits provides a brief glimpse into the breadth and scope of the Freescale motor control portfolio, much of it unique and built over decades of research and development. We discuss the advantages of different motor types and the methods of control, followed by a portfolio overview and a helpful selection guide. Next, we provide application examples and techniques we’ve implemented using our solutions, and we close with our software and development tools offerings. Solutions such as reference designs, application notes, software, tools and MCU families are listed at the end of each article to help you get started right away on your next design. Freescale continues to partner with innovators to make motors quieter, more efficient, smaller and to reduce mechanical vibration, and hopefully we can help you make them even smarter.
    [Show full text]
  • SDCC Compiler User Guide
    SDCC Compiler User Guide SDCC 3.7.1 $Date:: 2018-02-28 #$ $Revision: 10247 $ Contents 1 Introduction 6 1.1 About SDCC.............................................6 1.2 SDCC Suite Licenses.........................................7 1.3 Documentation............................................8 1.4 Typographic conventions.......................................8 1.5 Compatibility with previous versions.................................8 1.6 System Requirements......................................... 10 1.7 Other Resources............................................ 10 2 Installing SDCC 11 2.1 Configure Options........................................... 11 2.2 Install paths.............................................. 13 2.3 Search Paths.............................................. 14 2.4 Building SDCC............................................ 16 2.4.1 Building SDCC on Linux.................................. 16 2.4.2 Building SDCC on Mac OS X................................ 17 2.4.3 Cross compiling SDCC on Linux for Windows....................... 17 2.4.4 Building SDCC using Cygwin and Mingw32........................ 17 2.4.5 Building SDCC Using Microsoft Visual C++ 2010 (MSVC)................ 18 2.4.6 Windows Install Using a ZIP Package............................ 19 2.4.7 Windows Install Using the Setup Program.......................... 19 2.4.8 VPATH feature........................................ 19 2.5 Building the Documentation..................................... 20 2.6 Reading the Documentation....................................
    [Show full text]
  • $Date:: 2020-09-20#$ Contents
    gpsim $Date:: 2020-09-20#$ Contents 1 gpsim - An Overview 6 1.1 Makingtheexecutable ......................... 6 1.1.1 MakeDetails-./configureoptions . 6 1.1.2 RPMs.............................. 7 1.1.3 Windows ............................ 7 1.2 Running................................. 7 1.3 Requirements .............................. 8 2 Command Line Interface 9 2.1 attach .................................. 10 2.2 break .................................. 11 2.3 clear................................... 13 2.4 disassemble ............................... 14 2.5 dump .................................. 14 2.6 echo................................... 15 2.7 frequency ................................ 15 2.8 help ................................... 15 2.9 icd.................................... 15 2.10list ................................... 15 2.11load ................................... 16 2.12macros.................................. 16 2.13module ................................. 18 2.14node................................... 19 2.15processor ................................ 20 2.16quit ................................... 20 2.17run.................................... 20 2.18step ................................... 20 1 CONTENTS 2 2.19symbol.................................. 21 2.20stimulus................................. 21 2.21 stopwatch1 ............................... 22 2.22trace................................... 23 2.23version.................................. 23 2.24x..................................... 23 3 Graphical User Interface
    [Show full text]
  • Using Esterel-C to Model and Verify the PIC16F84 Microcontroller
    Using Esterel-C to Model and Verify the PIC16F84 Microcontroller Minsuk Lee, Cheryl Koesdjojo, Dixon Koesdjojo and Harish Peri Abstract High-level abstraction and formal modeling of reactive real-time embedded systems is an integral part of the embedded system design process. Such models allow designers to perform rigorous verification of the final product before manufacturing, thus ensuring that the final product is error-free. This paper outlines the process of creating a formal software model of the PIC16F84 microcontroller using the synchronous, event-driven Esterel-C (ECL) language. In addition, it describes the results of performing verification of this model using the XEsterel Verification Environment (XEVE) open-source software package. Finally, it offers a critical analysis of the verification results and suggestions to improve the verification process. Introduction even-driven Esterel-C Language (ECL). More Currently, real-time reactive embedded importantly, it describes and analyzes the results systems are used extensively. Given the mission- of performing formal verification on the model critical nature of such systems, designers cannot using the X Esterel Verification Environment afford to have any errors in the final product. As (XEVE). a result, all errors and behaviors of the system have to be verified and corrected at the design level. The verification process of such models Related Research and Products must be rigorous and as automated as possible, to Existing hardware simulators utilize one of save design time, and to ensure that the model is two simulation techniques: circuit simulation and error-free. This paper describes the process of functional modeling [1]. Circuit simulation designing a software model (simulator) of the involves creating a SPICE model (transistor-level PIC16F84 microcontroller using the synchronous, model) of the target hardware.
    [Show full text]