⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mc9s12.tlc

📁 simulink real-time workshop for dragon12 development board from
💻 TLC
字号:
%% SYSTLC: rtmc9S12-Target for Metrowerks CodeWarrior \
%%    TMF: mc9S12.tmf  MAKE: make_mc9S12 EXTMODE: ext_comm_mc9S12 
%%
%% $RCSfile: mc9S12.tlc,v $
%% $Revision: 1.31 $
%% $Date: 2005/20/02 22:03:30 $
%%
%%
%selectfile NULL_FILE

 MatFileLogging = 0

%assign TargetType = "RT"
%assign Language   = "C"
%% new in R13: this line may have to be altered to '%assign GenRTModel = 1' ?!  (FW-02-03)
%assign GenRTModel = TLC_TRUE


%% Prevent TLC failure if simulation stop time = inf
%assign stopTime = -1

%include "codegenentry.tlc"

%% Generate cpp_req_defines.h
%% Also, generate list of all RTW files (static and generated files)
%% required for a CodeWarrior project. 
%include "gen_cpp_req_defines_h.tlc"
%include "gen_rtw_filelist_mpf.tlc"


%% The contents between 'BEGIN_RTW_OPTIONS' and 'END_RTW_OPTIONS' are strictly 
%% written by the standard format. We need to use this structure in RTW 
%% options GUI function rtwoptionsdlg.m file.
%%
/%
  BEGIN_RTW_OPTIONS

  % first user category page
  i = 1;
  rtwoptions(i).prompt         = 'mc9S12 code generation options';
  rtwoptions(i).type           = 'Category';
  rtwoptions(i).enable         = 'on';  
  rtwoptions(i).default        = 6;   % number of items under this category
                                      % excluding this one.
  rtwoptions(i).popupstrings  = '';
  rtwoptions(i).tlcvariable   = '';
  rtwoptions(i).tooltip       = '';
  rtwoptions(i).callback      = '';
  rtwoptions(i).opencallback  = '';
  rtwoptions(i).closecallback = '';
  rtwoptions(i).makevariable  = '';

  i = i + 1;
  rtwoptions(i).prompt         = 'Target platform';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'Dragon-12';
  rtwoptions(i).popupstrings   = 'Dragon-12|MiniDragon+|UofA-Mobile-Robot';
  rtwoptions(i).tlcvariable    = 'Target_board';
  rtwoptions(i).tooltip        = ...
    ['Choose the target board to be used',sprintf('\n'), ...
    'when building the target code'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';
  
  i = i + 1;
  rtwoptions(i).prompt         = 'Memory model ';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'Flash_flat';
  rtwoptions(i).popupstrings   = 'Flash_flat|Flash_banked';
  rtwoptions(i).tlcvariable    = 'Mem_Map';
  rtwoptions(i).tooltip        = ...
    ['Choose the memory model to be used',sprintf('\n'), ...
    'when building the target code'];

  i = i + 1;
  rtwoptions(i).prompt         = 'External mode';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'off';
  rtwoptions(i).tlcvariable    = 'ExtMode';
  rtwoptions(i).makevariable   = 'EXT_MODE';
  rtwoptions(i).tooltip        = ...
    ['Adds RS232 serial communication support',sprintf('\n'), ...
    'for use with Simulink external mode'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Communication speed';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = '115200';
  rtwoptions(i).popupstrings   = '150|300|600|1200|2400|4800|9600|19200|38400|57600|115200';
  rtwoptions(i).tlcvariable    = 'baudrate';
  rtwoptions(i).makevariable   = 'BAUDRATE';
  rtwoptions(i).tooltip        = ...
    ['Choose the communication speed',sprintf('\n'), ...
    'of the serial line'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Host sided communication port';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'COM2';
  rtwoptions(i).popupstrings   = 'COM1|COM2|COM3|COM4|COM5|COM6|COM7';
  rtwoptions(i).tlcvariable    = 'port';
  rtwoptions(i).makevariable   = 'PORT';
  rtwoptions(i).tooltip        = ...
    ['Choose the serial port to be used',sprintf('\n'), ...
    'for host to target communication'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Target sided communication port';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'SCI1';
  rtwoptions(i).popupstrings   = 'SCI0|SCI1';
  rtwoptions(i).tlcvariable    = 'MATLAB_comms_port';
  rtwoptions(i).tooltip        = ...
    ['Selet which serial port of the MC9S12 should be ',sprintf('\n'), ...
    'used for External Mode communications with MATLAB'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';


  % second user category page
  i = i + 1;
  rtwoptions(i).prompt         = 'mc9S12 code generation options (cont.)';
  rtwoptions(i).type           = 'Category';
  rtwoptions(i).enable         = 'on';  
  rtwoptions(i).default        = 7;   % number of items under this category excluding this one

  i = i + 1;
  rtwoptions(i).prompt         = 'MAT-file variable name modifier';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'rt_';
  rtwoptions(i).popupstrings   = 'rt_|_rt|none';
  rtwoptions(i).tlcvariable    = 'LogVarNameModifier';
  rtwoptions(i).tooltip        = ['prefix rt_ to variable name,', sprintf('\n'), ...
					     'append _rt to variable name,', sprintf('\n'), ...
					     'or no modification'];

  i = i + 1;
  rtwoptions(i).prompt         = 'Ignore custom storage classes';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'on';
  rtwoptions(i).tlcvariable    = 'IgnoreCustomStorageClasses';
  rtwoptions(i).tooltip        = ['Treat custom storage classes as ''Auto''.'];
  rtwoptions(i).opencallback   = ['objTag = ''Ignore custom storage classes_CheckboxTag'';', ...
					     'obj = findobj(DialogFig,''Tag'',objTag);', ...
					     'set(obj, ''Enable'', sl(''onoff'',ecoderinstalled));'];

  i = i + 1;
  rtwoptions(i).prompt         = 'External mode testing';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'ExtModeTesting';
  rtwoptions(i).makevariable   = 'TMW_EXTMODE_TESTING';
  rtwoptions(i).tooltip        = ['Internal testing flag for Simulink external mode'];

  i = i + 1;
  rtwoptions(i).prompt         = 'Integer code only';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'off';
  rtwoptions(i).tlcvariable    = 'PurelyIntegerCode';
  rtwoptions(i).makevariable   = 'INTEGER_CODE';
  rtwoptions(i).tooltip = ...
    ['Raise error if the generated code contains', sprintf('\n'), ...
    'floating point data types'];

  i = i + 1;
  rtwoptions(i).prompt         = 'Force rebuild of the static libraries used by the model';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'off';
  rtwoptions(i).tlcvariable    = 'StaticLibraryRebuild';
  rtwoptions(i).tooltip        = ['For the static libraries referenced by this model ', ...
									sprintf('\n'),...
									'to be rebuilt.'];
  i = i + 1;
  rtwoptions(i).prompt         = 'Use LCD display for error messages';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'on';
  rtwoptions(i).tlcvariable    = 'LCDdispErrors';
  rtwoptions(i).tooltip        = ['This displays the error numbers on the LDC display ', ...
									sprintf('\n'),...
									'instead of using LED PORTB_0.'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'RT logging information (debug) on SCI0';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = '0';
  rtwoptions(i).popupstrings   = '0|1|2|3';
  rtwoptions(i).tlcvariable    = 'Debug2SCI0';
  rtwoptions(i).tooltip        = ['This (de)activates the display of Real-Time ', ...
									sprintf('\n'),...
									'debug messages through SCI0.'];
									
  % third user category page
  i = i + 1;
  rtwoptions(i).prompt         = 'mc9S12 code generation options (cont.)';
  rtwoptions(i).type           = 'Category';
  rtwoptions(i).enable         = 'on';  
  rtwoptions(i).default        = 17;   % number of items under this category excluding this one

  i = i + 1;
  rtwoptions(i).prompt         = 'Timing signals';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'off';
  rtwoptions(i).tlcvariable    = 'Timing_signals';
  rtwoptions(i).makevariable   = 'TIMING';
  rtwoptions(i).tooltip        = ...
    ['Enables the display of timing signals',sprintf('\n'), ...
    'for cycle time and serial reception'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Cycle time signal pin';
  rtwoptions(i).type           = 'Edit';
  rtwoptions(i).default        = '5';
  rtwoptions(i).tlcvariable    = 'CycTI_pin';
  rtwoptions(i).makevariable   = 'CYCTI_PIN';
  rtwoptions(i).tooltip        = ...
    ['Pin for the monitoring of the cycle time',sprintf('\n'), ...
    'Format: P<port>.<pin>'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Serial reception signal pin';
  rtwoptions(i).type           = 'Edit';
  rtwoptions(i).default        = '6';
  rtwoptions(i).tlcvariable    = 'SerTI_pin';
  rtwoptions(i).makevariable   = 'SERTI_PIN';
  rtwoptions(i).tooltip        = ...
    ['Pin for the monitoring of serial reception interrupts',sprintf('\n'), ...
    'Format: P<port>.<pin>'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Timing signaling port';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'PORTB';
  rtwoptions(i).popupstrings   = 'PORTB|PTP|PTT|PTH';
  rtwoptions(i).tlcvariable    = 'timeport';
  rtwoptions(i).makevariable   = 'TIMEPORT';
  rtwoptions(i).tooltip        = ...
    ['Choose the port to be used',sprintf('\n'), ...
    'to display timing signals'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Run upon reset';
  rtwoptions(i).type           = 'Checkbox';
  rtwoptions(i).default        = 'off';
  rtwoptions(i).tlcvariable    = 'Run_Immediately';
  rtwoptions(i).makevariable   = 'RUN_IMMEDIATELY';
  rtwoptions(i).tooltip        = ...
    ['Cause the target code to execute without',sprintf('\n'), ...
    'waiting for a start message from the host'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';
  
    i = i + 1;
  rtwoptions(i).prompt         = 'Core Timer Select';
  rtwoptions(i).type           = 'Popup';
  rtwoptions(i).default        = 'RTI';
  rtwoptions(i).popupstrings   = 'RTI|T7I';
  rtwoptions(i).tlcvariable    = 'Core_time';
  rtwoptions(i).tooltip        = ...
    ['Selet which core timer to be used ',sprintf('\n'), ...
    'by the MC9S12 for timing purpose'];
  rtwoptions(i).callback       = 'mc9S12_callback_handler';

  i = i + 1;
  rtwoptions(i).prompt         = 'First microcontroller communications port';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = 'unused';
  rtwoptions(i).tlcvariable    = 'SCI0';

  i = i + 1;
  rtwoptions(i).prompt         = 'Second microcontroller communications port';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = 'unused';
  rtwoptions(i).tlcvariable    = 'SCI1';

  i = i + 1;
  rtwoptions(i).prompt         = 'SCI0 Freeport channels';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'NumFreePortSCI0';

  i = i + 1;
  rtwoptions(i).prompt         = 'SCI1 Freeport channels';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'NumFreePortSCI1';

  i = i + 1;
  rtwoptions(i).prompt         = 'Timer base period';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'TimerBasePeriod';

  i = i + 1;
  rtwoptions(i).prompt         = 'Timer prescaler value';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'TimerPrescaler';

  i = i + 1;
  rtwoptions(i).prompt         = 'Timer prescaler mask';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'TimerPrescalerMask';

  i = i + 1;
  rtwoptions(i).prompt         = 'Timer blocks present';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'HasTimers';

  i = i + 1;
  rtwoptions(i).prompt         = 'RFComms blocks present';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'HasRFComms';

  i = i + 1;
  rtwoptions(i).prompt         = 'RFComms server channels';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '1';
  rtwoptions(i).tlcvariable    = 'RFCommsServerChannels';

  i = i + 1;
  rtwoptions(i).prompt         = 'Fuzzy blocks present';
  rtwoptions(i).type           = 'NonUI';
  rtwoptions(i).default        = '0';
  rtwoptions(i).tlcvariable    = 'HasFuzzyBlocks';

  %----------------------------------------%
  % Configure RTW code generation settings %
  %----------------------------------------%
  
  rtwgensettings.BuildDirSuffix = '_mc9S12_rtw\sources';
  
  END_RTW_OPTIONS 
 %/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -