Multi Source Translation Content

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Multi Source Translation Content

讨论

排序依据:
How to add Wi-Fi to Freescale i.MX 6 For more information visit: http://www.silexamerica.com/freescale/index.html Andy C. Ross, our Field Applications Engineer, demonstrates how to enable wireless connectivity to your i.MX 6 platform. This 6-minute video tutorial shows how easy it is to enable Wi-Fi on your Freescale platform using Silex's evaluation kit, the SX-6K3-EVK-SD. The SX-6K3-EVK-SD is designed to provide the optimum platform with which to evaluate the Wireless Radio Module and Silex Radio Driver with the Freescale’s i.MX6 processor on the Sabre Smart Devices board. This video walks you step by step on how to enable Wi-Fi connectivity for your i.MX 6 Platform. For more information visit: http://www.silexamerica.com/freescale/index.html Andy C. Ross, our Field Applications Engineer, demonstrates how to enable wireless connectivity to your i.MX 6 platform. This 6-minute video tutorial shows how easy it is to enable Wi-Fi on your Freescale platform using Silex's evaluation kit, the SX-6K3-EVK-SD. The SX-6K3-EVK-SD is designed to provide the optimum platform with which to evaluate the Wireless Radio Module and Silex Radio Driver with the Freescale’s i.MX6 processor on the Sabre Smart Devices board. This video walks you step by step on how to enable Wi-Fi connectivity for your i.MX 6 Platform.
查看全文
MM9Z1_638 Intelligent Battery Sensor Demo Owner: Neil Krohn NXP's MM9Z1_638 is a fully integrated battery monitoring device for mission critical automotive and industrial applications. An S12Z microcontroller, SMARTMOS analog control IC, CAN protocol module and LIN interface for communications functions are embedded into this single-package soltuion. The MM9Z1_^38 battery sensor measures key battery parameters for monitoring state of health, state of charge and state of function for early batteries as well as emerging battery applications, such as 14 V stacked cell Li-Ion, high voltage junction boxes, and 24 V truck batteries.     Features The MM9Z1_638 is a fully integrated battery monitoring device for mission critical automotive and industrial applications. An S12Z microcontroller, SMARTMOS analog control IC, CAN protocol module and LIN interface for communications functions are embedded into this single-package solution. The MM9Z1_38 battery sensor measures key battery parameters for monitoring state of health, state of charge and state of function for early batteries as well as emerging battery applications, such as 14 V stacked cell Li-Ion, high voltage junction boxes, and 24 V truck batteries. Featured NXP Products MM9Z1_638: Battery Sensor with CAN and LIN Product Features: Wide range battery current measurement; on-chip temperature measurement Four battery voltage measurements with internal resistor dividers, and up to five direct voltage measurements for use with an external resistor divider Measurement synchronization between voltage channels and current channels Five external temperature sensor inputs with internal supply for external sensors Low-power modes with low-current operation Links Freescale Concept Car   Automotive
查看全文
Ubuntu 12.04 64-bit Precise Pangolin Host Setup for Building i.MX28 L2.6.35_MX28_SDK_10.12_SOURCE [1] [1] Overview Resources Download Ubuntu 12.04.01 Download i.MX28EVK BSP and Documents Ubuntu Host Setup Host Package Update Ubuntu Configuration PDF Sudo Priviledges Default Shell CCACHE Directory Layout Extract SDK and Documents Install BSP Sources Ubuntu Software Packages for LTIB Patching LTIB Create SD Card Using Ubuntu Host Media Booting Selection Cable Connections   Overview Freescale's i.M28EVK development kit provides a platform for running software and evaluating features of the i.MX28 processor. This document provides the details for running the Linux Board Support Package (BSP) on the Ubuntu 12.04 64-bit Precise Pangolin Host on an Intel/AMD architecture computer. The 32-bit host is not covered in this document and does have different configuration steps than described here.   An Ubuntu Linux host is used to cross-compile the BSP creating ARM images. The BSP provides a build system named Linux Target Image Builder, (LTIB),  the GNU tool suite for compiling and debugging, U-Boot boot loader, Linux kernel, and a root file system. Resources i.M28EVK- i.MX28 Evaluation Kit Web Page MCIMX28EVKJ Product Summary Page- i.MX28 Download Collateral L2.6.36_MX28_SDK_10.12_Source- BSP Source Download Linux documentation - i.MX28EVK Documentation Ubuntu 12.04.1 LTS (Precise Pangolin)- Ubuntu 12.04 Release Download Ubuntu 12.04.01 A dedicated computer running Ubuntu or a Virtual Machine, (VMware or VirtualBox), can be used for running the Host Ubuntu software. The Ubuntu image is available for downloaded from the Ubuntu site: Ubuntu 12.04.1 LTS (Precise Pangolin).   This Ubuntu host ISO was used with the md5 checksum: ubuntu-12.04.1-desktop-amd64.iso  06472ddf11382c8da1f32e9487435c3d   One way to acquire the ISO is to use zsync to download: zsync http://releases.ubuntu.com/12.04/ubuntu-12.04.1-desktop-amd64.iso.zsync  Once downloaded, installing the ISO is user preference - either a dedicated Linux PC or in a Virtual Machine.   Download i.MX28EVK BSP and Documents The BSP download is from this site L2.6.36_MX28_SDK_10.12_Source and the documents from Linux documentation that requires a free registration to specify login credentials,   436e0b8e1c7976c657d530a45f9dbd0c L2.6.35_10.12.01_SDK_source_bundle.tar.gz de0274320a17c1e989d1ef5c088973e2 L2.6.35_10.12.01_SDK_docs.tar.gz   Ubuntu Host Setup Ubuntu login credentials of User: user Password: user are used for this documents. Host Package Update Once logged in to the Ubuntu host, the existing packages are brought up to date to the latest version before installing the BSP. The Ubuntu package manager used is apt-get. $ sudo apt-get update $ sudo apt-get upgrade  01. Check all installed packages for new revisions 02. all newer packages found are installed.   Addtional packages are required for the ltib build system. Ubuntu Configuration PDF evince is the default pdf reader, another option is zathura. $ sudo apt-get install zathura Sudo Priviledges LTIB requires super user priviledges for some operations. To enable a visudo entry is added to the sudo'ers file. For more information run 'man visudo'.   $ sudo visudo  The first word, user, is the login account 'user' This can be changed to whatever login you used, or if you have groups configured you can provide a group that developers are in - refer to the man page for sudo for details. Add this line:   user ALL =NOPASSWD: /usr/bin/rpm/ /opt/freescale/ltib/usr/bin/rpm   Default Shell Ubuntu uses the default shell 'dash'. This however causes failures on bash scripting which is part of the ltib system. Change the default shell from 'dash' to 'bash'   $ sudo update-alternatives --install /bin/sh sh /bin/bash 1  CCACHE ccache provides a fast C/C++ compiler cache which is supported in the ltib system. To configure once the ccache package has been installed: $ sudo apt-get install ccache $ ccache -M 50M $ ccache -c  02. Set the cache limit to 50 Meg 03. Clear the cache folder   Directory Layout The following directory structure is used: /home/user/freescale/imx28/ |-- archive |-- L2.6.35_10.12.01_ER_source |-- L2.6.35_10.12.01_SDK_docs |-- L2.6.35_10.12.01_SDK_scripts |-- ltib |-- ubuntu-imx28-ltib-patch   The archive directory is where the BSP and documents are stored; command to create the directory: $ mkdir -p ~/freescale/imx28/archive   Extract SDK and Documents The following instructions were used to extract the contents of the Software Development Kit:   $ cd ~/freescale/imx28/archive $ tar -zxf L2.6.35_10.12.01_SDK_source_bundle.tar.gz -C ..    01. Change into the directory containing the tar ball that is compressed. 02. Extract the contents into the directory above (-C ..) the current directory -z unzip -x extract -f L2.6.35_10.12.01_SDK_source_bundle.tar.gz   $ tar -zxf L2.6.35_10.12.01_SDK_docs.tar.gz  01. Extract the contents into the directory above (-C ..) the current directory     -z unzip     -x extract     -f L2.6.35_10.12.01_SDK_docs.tar.gz this file The contents of both tar files are now in the directory /home/user/freescale/imx28. Install BSP Sources After extracting the content from the L2.6.35_10.12.01_SDK_source_bundle.tar.gz the file L2.6.35_10.12.01_SDK.source.tar.gz contains all the sources and the build system. Extract the contents and install. This will create the ltib directory which is the build system. $ tar -zxf L2.6.35_10.12.01_SDK_source.tar.gz $ cd L2.6.35_10.12.01_ER_source $ ./install  Read the license information and accept by entering YES. An installation directory is then asked for, providing:  .. which is the parent directory. The installation script copies the packages and will inform you that 'Installation complete, your ltib installation has been placed in ../ltib, to complete the installation: cd .../ltib ./ltib  HOWEVER before doing this, there are packages and patches that need to be applied to run ltib on Ubuntu 12.04.01. Ubuntu Software Packages for LTIB The following packages are required. The script pkg-setup.sh attached below has these packages which can be downloaded and executed to install. $ sh pkg-setup.sh  sudo apt-get -y install gettext libgtk2.0-dev rpm bison m4 libfreetype6-dev sudo apt-get -y install libdbus-glib-1-dev liborbit2-dev intltool sudo apt-get -y install ccache zlib1g zlib1g-dev gcc g++ libtool sudo apt-get -y install uuid-dev liblzo2-dev tcl wget libncurses5-dev sudo apt-get -y install libncursesw5-dev lib32z1 libglib2.0-dev xsltproc sudo apt-get -y install ia32-libs libc6-dev-i386 The file pkg2-setup.sh contains optional packages for development. To install, download and execute: $ sh pkg2-setup.sh Please refer to the document ltib_build_host_setup.pdf for more information on host setup. Patching LTIB The location of files from the glibc-devel and zlib Ubuntu 12.04 packages has changed from 9.0.4 Ubuntu which the original ltib was released against. To update ltib operation the following patches are implemented from the directory ~/freescale/imx28/ltib 1. The file ltib is changed at line 2387 adding the '-v' option to the rpm call OLD:     system('rpm --force-debian 2>/dev/null') == 0? NEW:     system('rpm -v --force-debian 2>/dev/null') == 0? 2. The file bin/Ltibutils.pm is updated to support glibc-devel and zlib.   glibc-devel update: Line 563 add check for /usr/lib32/libm.so 'glibc-devel' => sub {-f 'usr/lib/libm.so' || -f '/usr/lib64/libz.so' || -f '/usr/lib32/libm.so'},   zlibc update: Line 584 add /lib/x86_64-linux-gnu/libz.so* zlib => sub{my @f = (glob('/usr/lib/libz.so*'),               glob('/lib/x86_64-linux-gnu/libz.so*'),               glob('/lib/libz.so*'),   The above patches are also in the attachment 0001-patches-for-12.04-ubuntu.patch.   LTIB packages also need adjustments to correctly build on Ubuntu. The tar file below, ubuntu-imx28-ltib-patch.tgz contains all the updates. Download and extract the contents at the same directory level as your ltib source directory. $ tar -zxf ubuntu-imx28-ltib-patch.tgz ├── ltib ├── ubuntu-imx28-ltib-patch └── ubuntu-imx28-ltib-patch.tgz Change directories to ubuntu-imx28-ltib-patch and then run the install-patches.sh script. $ cd ubuntu-imx28-ltib-patch $ ./install-patches.sh   The following packages are updated: lkc mtd-utils mux_server sparse Create SD Card Using Ubuntu Host The tar file L2.6.35_10.12.01_SDK_scripts.tar.gz contains scripts for writing the images from the ltib build to a SD card. Extract the content, copy the scripts to the ltib directory, and update the mk_mx28_sd script to work with the updated fdisk command.   $ tar -zxf L2.6.35_10.12.01_SDK_scripts.tar.gz $ cd L2.6.35_10.12.01_SDK_scripts $ cp mk_hdr.sh ~/freescale/imx28/ltib $ cp mk_mx28_sd ~/freescale/imx28/ltib $ cd ~/freescale/imx28/ltib  Edit mk_mx28_sd script and add the 'u' at line 177 then the o command after. This changes cylinders to sectors.   OLD: echo "o n   NEW: echo "u o n   Once updated to create the SD card which is at /dev/sdb: $ ./mk_mx28_sd /dev/sdb  NOTE: if mounted automatically, you need to unmount for the script to work $ sudo umount /dev/sdb*      Media Booting Selection The i.MX28EVK has a boot option to execute from the SD Card in Slot 0 which is located on the bottom of the EVK. On the top of the EVK there are switches that are read during the start up process to determine what boot media to use. The SD Card in slot 0 is used for this example which requires the settings: B3/DIP1 B2/DIP2 B1/DIP3 B0/DIP4 1 0 0 1 Refer to the user guide, i.MX28_Linux_BSP_UG.pdf section 3.2.1. Boot Modes for all options. The user guide is found in the Linux documentation bundle documentation.  Refer to the next section for a picture showing the boot switch location and the SD Card Slot 0 location. Cable Connections A computer serial port is connected to the i.MX28EVK serial port. The communication setting is 115200 baud, 8 data bits, No parity, and 1 stop bit. There is NO flow control set for this port. This is typically shown as 115200, 8N1. The power supply is connected  
查看全文
使用 Processor Expert 为 IAR 生成代码 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 附件文档展示了如何使用 Processor Expert Driver Suit 为 IAR 生成代码。您可以在幻灯片底部的注释中看到详细信息。 顺祝商祺! 卡洛斯
查看全文
Implementing infrared functions on UART0 with FRDM-KE02Z platform. This document shows the implementation of the infrared on the UART0 using the FRDM-KE02Z platform. The FRDM-KE02Z platform is a developing platform for rapid prototyping. The board has a MKE02Z64VQH2 MCU a Kinetis E series MCU which is the first 5-Volt MCU built on the ARM Cortex-M0+ core. You can check the evaluation board in the Freescale’s webpage (FRDM-KE02Z: Kinetis E Series Freedom Development Platform) The Freedom Board has a lot of great features and one of this is an IrDA transmitter and receiver on it. Check this out! One of the features of the MCU is that the UART0 module can implement Infrared functions just following some tricks (MCU-magic tricks). According to the Reference Manual (Document Number: MKE02Z64M20SF0RM) this tricks are:      UART0_TX modulation: UART0_TX output can be modulated by FTM0 channel 0 PWM output      UART0_RX Tag: UART0_RX input can be tagged to FTM0 channel 1 or filtered by ACMP0 module For this example we are going to use the ACMP0 module to implement the UART0_RX functionality. Note1: The Core is configured to run at the maximum frequency: 20 Mhz Note2: Refer to the reference manual document for more information about the registers. Configuring the FTM0. The next lines show the configuration of the FTM0; the module is configured with a Frequency of 38 KHz which is the ideal frequency for an infrared led. The FTM0_CH0 is in Edge_Aligned PWM mode (EPWM).           #define IR_FREQUENCY       38000 //hz      #define FTM0_CLOCK                BUS_CLK_HZ      #define FTM0_MOD_VALUE            FTM0_CLOCK/IR_FREQUENCY      #define FTM0_C0V_VALUE            FTM0_MOD_VALUE/2      void FTM0CH0_Init( void )      {        SIM_SCGC |= SIM_SCGC_FTM0_MASK;             // Init FTM0 to PWM output,frequency is 38khz        FTM0_MOD= FTM0_MOD_VALUE;        FTM0_C0SC = 0x28;        FTM0_C0V = FTM0_C0V_VALUE;        FTM0_SC = 0x08; // bus clock divide by 2      } With this we accomplish the UART0_TX modulation through a PWM on the FTM0_CH0. Configuring the ACMP0. The configuration of the ACMP0 is using a DAC and allowing the ACMP0 can be driven by an analog input.      void ACMP_Init ( void )      {        SIM_SCGC |= SIM_SCGC_ACMP0_MASK;        ACMP0_C1 |= ACMP_C1_DACEN_MASK |                   ACMP_C1_DACREF_MASK|                   ACMP_C1_DACVAL(21);    // enable DAC        ACMP0_C0 |= ACMP_C0_ACPSEL(0x03)|                            ACMP_C0_ACNSEL(0x01);        ACMP0_C2 |= ACMP_C2_ACIPE(0x02);  // enable ACMP1 connect to PIN        ACMP0_CS |= ACMP_CS_ACE_MASK;     // enable ACMP                } With this we have now implemented the UART0_RX.     IrDA initialization. Now the important thing is to initialize the UART0 to work together with these tricks and implement the irDA functions. Basically we initialize the UART0 like when we use normal serial communication (this is not the topic of this post, refer to the project to see the UART_init function) and we write to the most important registers:         SIM_SOPT |= SIM_SOPT_RXDFE_MASK; UART0_RX input signal is filtered by ACMP, then injected to UART0.      SIM_SOPT |= SIM_SOPT_TXDME_MASK; UART0_TX output is modulated by FTM0 channel 0 before mapped to pinout. The configuration is as follows:      void IrDA_Init( void )      { // initialize UART0, 2400 baudrate        UART_init(UART0_BASE_PTR,BUS_CLK_HZ/1000,2400);                  // clear RDRF flag        UART0_S1 |= UART_S1_RDRF_MASK;                  // initialize FTM0CH1 as 38k PWM output        FTM0CH0_Init();                      // enable ACMP        ACMP_Init(); SIM_SOPT |= SIM_SOPT_RXDFE_MASK;  //UART0_RX input signal is filtered by ACMP, then injected to UART0.        UART0_S2 &= ~UART_S2_RXINV_MASK;  //inverse data input SIM_SOPT |= SIM_SOPT_TXDME_MASK;  //UART0_TX output is modulated by FTM0 channel 0 before mapped to pinout.      } With the irDA initialization we got the infrared features on the UART0. Philosophy of the Example In the attachments of this post you can find the example which shows the use of these functions in a basic application; the project was compiled in CodeWarrior 10.6 and the philosophy is: I hope that the information presented on this document could be useful for you. Thank you! Best Regards! Freedom Development Platform Kinetis E Series MCUs Re: Implementing infrared functions on UART0 with FRDM-KE02Z platform. I figured out what was the problem. The TWR-K60 has a different IR receiver filter with R=1KOhm and C=0.1uF, which passes frequencies less than 1.6KHz compared to the FRDM-KE02Z which has R=1KOhm and C=1000PF, which will passes frequencies less than 160KHz, hence 38KHz is OK for that board. 38KHz wont work with TWR-K60N512 because it wi ll be blocked by the filter. I set the UART0 baud lower to 1400 and the FTM1 frequency to 1.5KHz and it works like a charm! I compared the two user manuals 🙂 Formula: fc = 1/(2*pi*Τ) = 1/(2pi*RC); where R=1000Ohms, C=0.1*10^-6Farads fc = 1.6KHz Re: Implementing infrared functions on UART0 with FRDM-KE02Z platform. I got it to work without FTM modulation, just with the 3/16 narrow pulse. UART0 configured with 2400 baudrate and inverted RX, CMP DAC Output voltage select is (Vin/64)*31+1 = VDD(3.3v) * 0.5 = 1.65V for a high(1), supply voltage select is 1 for Vin2 which is VDD (3.3v). The trick is to configure the Comparator properly with a good reference voltage on the inverting input. I did not configure any sampling. Next I will try with FTM modulation, only I dont know how exactly to demodulate on the comparator end using the sampling feature. Re: Implementing infrared functions on UART0 with FRDM-KE02Z platform. I am trying this with the TWR-K60N512 KIT, I can receive interrupts on UART0_Rx through Comparator from a TV remote signal, but not from the Tx pin although checking with a smartphone camera, the Tx IR signal is going on. The code is as follows: #include "types.h" #include "infrared.h" #define IR_FREQUENCY    38000 #define FTM1_CLOCK        750000 #define FTM1_MOD_VALUE    FTM1_CLOCK/IR_FREQUENCY #define FTM1_C0V_VALUE            FTM1_MOD_VALUE/2‍‍‍‍‍‍ void init_infrared(void){     //initialize uart0 as infrared port through CMP0     init_uart0();     //initialize Comparator     init_cmp0();     //initialize the Flex timer     init_ftm(); }‍‍‍‍‍‍‍‍ void init_uart(UART_MemMapPtr uartch, int sysclk, int baud){     uint16_t ubd, temp, brfa;    //disable Tx and Rx during setup     UART_C2_REG(uartch) &= ~(UART_C2_TE_MASK | UART_C2_RE_MASK );     /* Configure the UART for 8-bit mode, no parity */     /* We need all default settings, so entire register is cleared */     UART_C1_REG(uartch) = 0;     /* Calculate baud settings */     ubd = (uint16_t)((sysclk*1000)/(baud * 16));     /* Save off the current value of the UARTx_BDH except for the SBR */     temp = UART_BDH_REG(uartch) & ~(UART_BDH_SBR(0x1F));     UART_BDH_REG(uartch) = temp | UART_BDH_SBR(((ubd & 0x1F00) >> 8));     UART_BDL_REG(uartch) = (uint8_t)(ubd & UART_BDL_SBR_MASK);     /* Determine if a fractional divider is needed to get closer to the baud rate */     brfa = (((sysclk*32000)/(baud * 16)) - (ubd * 32));     /* Save off the current value of the UARTx_C4 register except for the BRFA */     temp = UART_C4_REG(uartch) & ~(UART_C4_BRFA(0x1F));     UART_C4_REG(uartch) = temp | UART_C4_BRFA(brfa);     // enable the reciever interrupts     UART_C2_REG(uartch) |= UART_C2_RIE_MASK; }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ void init_uart0(void){     //Gate clock to uart0       SIM_SCGC4 |= SIM_SCGC4_UART0_MASK;     init_uart(UART0_BASE_PTR,96000,2400);//core clock is 96Mhz=96000Khz     //enable IR encoding and decoding     UART0_IR |= UART_IR_IREN_MASK;     UART0_IR |= UART_IR_TNP(0x0);//narrow pulse 3/16 of baudrate     //System integration to route UART0_RX to CMP0     SIM_SOPT5 |= SIM_SOPT5_UART0RXSRC(01);//CMP0 as source of UART0_RX     SIM_SOPT5 |= SIM_SOPT5_UART0TXSRC(01);//Tx pin modulated with FTM1 channel0 output     SIM_SOPT2 |= SIM_SOPT2_CMTUARTPAD_MASK;//select dual pad drive strength for UART0_TX     //Enable receiver and transmitter     UART0_C2 |= UART_C2_RE_MASK;     UART0_C2 |= UART_C2_TE_MASK;     // configure Nested Vector Interrupt Controller: clear pending and set enable     NVICICPR1 |= interrupt_mask(1,INT_UART0_RX_TX);     NVICISER1 |= interrupt_mask(1,INT_UART0_RX_TX); }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ //UART0 brief interrupt handler void UART0_RX_TX_IRQHandler(){     if((UART0_S1 & UART_S1_RDRF_MASK)==UART_S1_RDRF_MASK){         byte2 = (uint8_t)UART0_D;         data_available2=1;     } }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ //FTM1 initialization, used to modulate UART0_TX void init_ftm(void){     SIM_SCGC6 |= SIM_SCGC6_FTM1_MASK;//gate the clock     FTM1_SC |= FTM_SC_CLKS(01);//system core clock as clock source     FTM1_SC |= FTM_SC_PS(7);//divide system clock by 128 = 750Khz     FTM1_MODE |= FTM_MODE_WPDIS_MASK;//disable write protect     FTM1_MOD |= FTM_MOD_MOD(FTM1_MOD_VALUE);//modulo value     FTM1_C0SC = 0x28;//edge-aligned PWM     FTM1_C0V = FTM1_C0V_VALUE; }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ void init_cmp0(void){     //gate the clock to CMP     SIM_SCGC4 |= SIM_SCGC4_CMP_MASK;     //disable comparator while configuring     CMP0_CR1 &= ~(CMP_CR1_OPE_MASK | CMP_CR1_EN_MASK);     //Configure and enable the Comparator's DAC for reference voltage     CMP0_DACCR |= CMP_DACCR_VRSEL_MASK;//supply voltage select is 1 for Vin2     CMP0_DACCR |= CMP_DACCR_VOSEL(0x0F);//Output voltage select is (Vin/64)*VOSEL+1 = Vin * 0.5 for a high(1)     CMP0_DACCR |= CMP_DACCR_DACEN_MASK;     //enable PMUX and MMUX     CMP0_MUXCR |= CMP_MUXCR_PEN_MASK | CMP_MUXCR_MEN_MASK;     //select IN0 for PMUX(positive side) and DACOUT i.e channel 7 as MMUX(minus side)     //          |\     //    IN0---|+\     //          |  \______CMP_OUT     //          |  /     // DACout---|-/     //          |/     //         COMPARATOR     //     CMP0_MUXCR |= CMP_MUXCR_PSEL(0);     CMP0_MUXCR |= CMP_MUXCR_MSEL(7);     //set 0 samples per measurement     CMP0_CR0 |= CMP_CR0_FILTER_CNT(0x0);//disable filter     CMP0_CR1 |= CMP_CR1_COS_MASK;//unfiltered output     CMP0_CR1 |= CMP_CR1_INV_MASK;//invert output     //enable comparator and the output pin     CMP0_CR1 |= (CMP_CR1_OPE_MASK | CMP_CR1_EN_MASK); }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍ I think I am missing some information on how the modulation actually works. Could you please explain a little further on the actual protocol, how the timing diagrams look like, how do we demodulate, where are the UART settings for demodulation, i can see how we modulate with the FTM, but not how we are actually demodulating the received signal. Is it by sampling the CMP input? BlackNight‌ you have any ideas? Re: Implementing infrared functions on UART0 with FRDM-KE02Z platform. Hello Sanchez,           A good post indeed. But, I was wondering what might be the communication pattern? Is it a standard 3/16th bit width communication or the modulated Tx waveform looks different altogether? Couldn't capture on oscilloscope as the FTM is running continuously. Is the modulated waveform similar to the one attached?
查看全文
FRDM-MK64ボードを使用して、KDSのSDカードに加速度計データを書き込む <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDSのSDカードへの加速度計データの書き込み   形容:   KDS で FRDM-MK64FN1MOVLL12 ボードを使用して Accelerometer データを SD カードに書き込むプロジェクト。 加速度計から取得した変数x、y、zの時間と値が毎秒SDカードに書き込まれます。 これらはlog.txtファイルに書き込まれ、存在しない場合は作成されます。 書き込み中は、LEDが毎秒緑色に点滅します。 エラーが発生した場合、LCDは毎秒赤く点滅します。   http://mcuoneclipse.com/2014/05/26/tutorial-data-logger-with-the-frdm-k64f-board/ から取得したコードのセクション   問題:   フラッシュ後、時間は常に17:51:31から始まります。 これは、TmDt1_Initでそのように設定されているためです。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDSのSDカードへの加速度計データの書き込み   形容:   KDS で FRDM-MK64FN1MOVLL12 ボードを使用して Accelerometer データを SD カードに書き込むプロジェクト。 加速度計から取得した変数x、y、zの時間と値が毎秒SDカードに書き込まれます。 これらはlog.txtファイルに書き込まれ、存在しない場合は作成されます。 書き込み中は、LEDが毎秒緑色に点滅します。 エラーが発生した場合、LCDは毎秒赤く点滅します。   http://mcuoneclipse.com/2014/05/26/tutorial-data-logger-with-the-frdm-k64f-board/ から取得したコードのセクション   問題:   フラッシュ後、時間は常に17:51:31から始まります。 これは、TmDt1_Initでそのように設定されているためです。 全般
查看全文
适用于 CodeWarrior Power Architecture 的 Aurora Trace <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 概述
查看全文
Exercise 4: Kinetis Random Number Generator To do: The development platform is Eclipse. The EVAL Board is the Kinetis Tower TWR K60. On the Tower, you find 2 pushbuttons and 4 LEDs. a) Generate a hexadecimal random number from 0x0 to 0xF as long as pushbutton1 is pressed. Display the result with the 4 LEDs for about 3 seconds. b) Replace the code for recognizing a pressed key by a macro "KEY1_PRESSED". c) Replace the access to the 4 LEDs by a macro "LEDx_TOGGLE" with x = 0...3". Use active wait loops instead of the timer in this Kinetis exercise. Result: TWR_K60_RANDOM.zip
查看全文
フリーマスター - TSA <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> FreeMASTER TSA(Target Side Address translation)の機能を説明するチュートリアルビデオです。   音楽: Bensbound (マイビデオで視聴)
查看全文
フローティングライセンスサーバーデーモン - Hiware <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Re:フローティングライセンスサーバーデーモン - Hiware <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ザ  lmgrd  daemon とベンダーデーモンは連携してライセンスキーを管理します。  lmgrd  デーモンは、クライアント・アプリケーション・プログラムとの最初の接続を処理し、接続を適切なベンダー・デーモンに渡します。  lmgrd  デーモンは、ベンダーデーモンも起動および再起動します。
查看全文
Floating License server daemon - Hiware Re: Floating License server daemon - Hiware The  lmgrd  daemon and the vendor daemons work together to manage the license keys. The  lmgrd  daemon handles the initial contact with the client application programs, passing the connection on to the appropriate vendor daemon. The  lmgrd  daemon also starts and restarts vendor daemons.
查看全文
KDS で FRDM-KL25 ボードを USB マウスとして使用する <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDSのUSBマウス   形容:   KDS で FRDM-KL25Z128M4 ボード上の加速度計を使用して USB マウス入力を制御するプロジェクト。 USBマウスとして接続されていないときはLEDが赤く点滅し、接続されている場合は緑色に点滅します。 リセットボタンは左クリックします。   マウスの感度は、main.cのHIDM1_Moveコマンドを変更することで変更できます リセットボタンは、main.cのコメントを変更することにより、左クリックから右クリックに変更できます   コードのセクションは、以下から取得されます。 - http://mcuoneclipse.com/2012/09/21/tutorial-accelerating-the-kl25z-freedom-board/ - http://mcuoneclipse.com/2013/08/01/using-the-frdm-kl25z-as-a-usb-mouse-device/ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> KDSのUSBマウス   形容:   KDS で FRDM-KL25Z128M4 ボード上の加速度計を使用して USB マウス入力を制御するプロジェクト。 USBマウスとして接続されていないときはLEDが赤く点滅し、接続されている場合は緑色に点滅します。 リセットボタンは左クリックします。   マウスの感度は、main.cのHIDM1_Moveコマンドを変更することで変更できます リセットボタンは、main.cのコメントを変更することにより、左クリックから右クリックに変更できます   コードのセクションは、以下から取得されます。 - http://mcuoneclipse.com/2012/09/21/tutorial-accelerating-the-kl25z-freedom-board/ - http://mcuoneclipse.com/2013/08/01/using-the-frdm-kl25z-as-a-usb-mouse-device/ 全般 日時:KDSでFRDM-KL25ボードをUSBマウスとして使用する <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Bluetooth to UARTモジュールで可能になる場合があります。しかし、私はこの分野での経験がないことを認めます。 日時:KDSでFRDM-KL25ボードをUSBマウスとして使用する <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Bluetoothを使用するように、つまり付属のデバッグケーブルを使用せずにボードを適応させることは可能ですか?
查看全文
RDS12VR: Anti-Pinch Window Lift Reference Design Overview Features Block Diagram Design Resources Overview NXP® and Tongji University jointly developed the anti-pinch window lift reference design featuring the MagniV® S12VR MCU, ideal for the development of power windows and sun roof systems. Includes hardware for real door/window in-vehicle applications, as well as software including anti-pinch algorithms and low-level S12VR drivers Aimed at reducing time to market, this design leverages unique features of the MagniV S12VR MCU Reduces unnecessary external components, lowers the total bill of material (BOM), improves system quality and saves space in automotive applications through a smaller PCB Features Window manual/automatic up/down, automatic up/down with stop function Anti-pinch in both manual/automatic mode, anti-pinch region and force can be adjusted Stuck detection out of anti-pinch region, motor overload protection Soft stop when window is close to the top/bottom Fault diagnosis, indicating low voltage, over voltage/current/temperature etc. Low power mode (leveraging S12VR low power mode) to reduce power consumption Self learning, calibration by updating the window/motor parameters stored in EEPROM Use hall sensor as well as current sense to judge anti-pinch in algorithm Easy-to-control Graphics User Interface (GUI), set the parameters and get the status Window lift can be controlled either by multiple LIN salve nodes or LIN master node (through GUI) Able to comply with relevant content in US Federal Motor Vehicle Safety Standard (FMVSS No. 118) Block Diagram Design Resources Legacy Designs
查看全文
産業用およびネットワーキングアプリケーション向けのLayerscapeマイクロプロセッサポートフォリオ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> エッジコンピューティングアプリケーションについて学習し、ゲートウェイとセキュリティを「管理」するための技術的な課題、クラウドサービスのコンテキストでEdgeScaleフレームワークを含むLayerscapeマイクロプロセッサソリューションを示します。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> エッジコンピューティングアプリケーションについて学習し、ゲートウェイとセキュリティを「管理」するための技術的な課題、クラウドサービスのコンテキストでEdgeScaleフレームワークを含むLayerscapeマイクロプロセッサソリューションを示します。 Layerscape処理プラットフォーム
查看全文
Enabling SD Interface on P1024 Reference Design Board To enable SD interface in SPI boot on p1024RDB: 1. Perform the following updates in u-boot a) Modify pmuxcr to enable SD bus in case of SPI boot b) Update the corresponding static mux implementation in u-boot 2. Perform the following updates in Linux a) Disable IFC from device tree and kernel defconfig The patch details to enable SD interface are given below. A zip file, AN4336SW.zip, containing the patches for u-boot and Linux accompanies this application note. The file can be downloaded from [1]. U-Boot   Extract the u-boot code from the QorIQ SDK 1.0.1 iso   Apply the patch, u-boot-p1024rdb-enabling-sd-in-spi-boot.patch   Compile the u-boot using "make" command for SPI Flash    make ARCH=powerpc   CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.5.55-eglibc-2.11.55/powerpc-linux-gnu/bin/powerpc-linux-gnu- p1024RDB_SPIFLASH   Use the boot_format utility to generate the spiimage. For more information, see SDK manual.   Update the SPI Flash with the above built spiimage Linux Extract the Linux source code from QorIQ SDK 1.0.1 iso Apply the patch, linux-p1024rdb-enabling-sd-in-spi-boot.patch Compile Linux using make command #make ARCH=powerpc  CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.5.55-eglibc-2.11.55/powerpc-linux-gnu/bin/powerpc-linux-gnuarch/  powerpc/configs/qoriq_sdk_nonsmp_defconfig  #make ARCH=powerpc  CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.5.55-eglibc-2.11.55/powerpc-linux-gnu/bin/powerpc-linux-gnu- Compile the dts ./sripts/dtc/dtc -f -I dts -O dtb -R 8 -S 0x3000  arc/powerpc/boot/dts/p1024rdb.dts.dts > p1024rdb.dtb.dtb With the updated SPI bootloader, Linux uImage and p1024rdb.dtb, the user must be able to enable SD interface on P1024RDB. NOTE The above-mentioned changes must be done only when the user specifically requires the SD interface using SPI boot. For all other boot methods, these patches must not be used. QorIQ P1 Devices
查看全文
使用 Sigfox 发送 GPS 坐标 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 该视频展示了如何使用 Sigfox OL2385 开发板获取 GPS 坐标并将其发送到互联网 (在 “我的视频” 中查看) 智慧城市
查看全文
功率和效率增强的 5G mMIMO 模块 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 完整系列的多功能放大器模块可快速部署基站,满足 5G 无线基础设施设备的超低延迟/高数据速率需求。 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 完整系列的多功能放大器模块可快速部署基站,满足 5G 无线基础设施设备的超低延迟/高数据速率需求。 接口和连接
查看全文
RDDSP56F8SRDS: 3-Phase SR Motor Sensorless Control Reference Design using 56F80X or 56F8300 DSCs Overview Features Block Diagram Board Design Resources Overview The reference design demonstrates sensorless control of the 3-Phase Switched Reluctance (SR) motor using 56F80x or 56F83XX Digital Signal Controllers. It can also be adapted to 56F81XX Digital Signal Controllers. The concept of this application is that of a sensorless speed closed loop SR drive using flux linkage position estimation. An inner current loop with PI controller is included. The change in phase resistance during motor operation due to its temperature dependency creates errors in the position estimation and significantly affects the performance of the drive. Therefore, a novel algorithm for on-the-fly estimation of the phase resistance is included. The Digital Signal Controller runs the main control algorithm. Rotor position is evaluated using the sensorless flux linkage estimation algorithm. The actual flux linkage is calculated at the rate of the PWM frequency and is compared with the reference flux linkage for a given commutation angle. When the actual flux linkage exceeds the reference, the commutation of the phases is done; the actual phase is turned off and the following phase is turned on. Flux linkage error is used for estimation of the phase resistance at low speeds (US Patent No.: 6,366,865). The actual speed of the motor is determined using the commutation instances. Based on the speed error, the speed controller generates the desired phase current. When the phase is commutated, it is turned on with a duty cycle of 100%. Then, during each PWM cycle, the actual phase current is compared with the desired current. As soon as the actual current exceeds the desired current, the current controller is turned on. The current controller controls the output duty cycle until the phase is turned off (following commutation). Finally, the 3-Phase PWM control signals are generated. The procedure is repeated for each commutation cycle of the motor. Features Sensorless control of an SR motor using a flux linkage estimation technique Targeted for 56F80X, 56F83XX, and 56F81XX Digital Signal Controllers Running on a 3-Phase SR HV Motor Control Development Platform The control technique: current control with a speed closed loop Position estimation based on flux linkage estimation Phase resistance measurement during start-up Phase resistance estimation at low speeds Motor starts from any position with rotor alignment Encoder position reference for evaluation of sensorless position estimation Manual interface FreeMASTER software control interface and monitor Fault protection Block Diagram Board Design Resources Legacy Designs
查看全文
これで、構成セクションにコンポーネントセクションを要求できるようになりました <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 以前は、設定セクションは設定セクションのみを必要とすることができましたが、現在は設定に設定とコンポーネントを要求できるようになりました。 この新機能により、一部のコンポーネントセクションが一部のボード/キットのすべてのアプリケーションで一般的に必要とされる場合、ユーザーはこのボード/キットの共通の設定セクションを使用して、すべてのymlファイルの「__hierachy__」でそれらを維持するのではなく、それらを要求できるため、保守の労力を大幅に節約できます。 Re:現在、構成セクションにはコンポーネントセクションが必要です <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ケイト、何か例を挙げていただけますか?
查看全文
ミニモンキーレブB 基板付:NG <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> Mini-Monkeyの設計を更新し、PCB:NGを使用して製作しました。 (マイビデオで視聴)
查看全文